この人頭いいなと思ったエピソード

テキストファイルから特定の文字列が入った行を取得したいです。

例えば下記のような文が記載されたテキストファイルを


a 山田太郎 176cm
bbbbbbbb
cccccc山田太郎176
山田太郎dddddd
山田太郎君

出力結果
a 山田太郎 176cm
cccccc山田太郎176
山田太郎dddddd
山田太郎君


上記のように出力するにはどのように条件式を書いたらいいでしょうか

宜しくお願いします

A 回答 (1件)

こんにちは



>上記のように出力するにはどのように条件式を書いたらいいでしょうか
条件が明示されていないけれど、例示の結果から見て、「太郎」の有無で判定しているものと推測(あるいは、山田太郎かな?)

単純に語句の有無だけの判定をしたいのであれば、1行の文字列が変数sentenceに代入されているとして
 InStr(sentence, "太郎")
の結果が、0より大きければsentence内に「太郎」が含まれていると判断できます。

もっと複雑な条件で処理したい場合には、正規表現を利用する方が簡単な場合も少なくありません。
初期設定で
 Set RE = CreateObject("VBScript.RegExp")
 RE.Pattern = "太郎"
などとしておいて

 RE.Test(sentence)
の結果のTrue/Falseで判断することができます。

ご提示のような内容なら、InStrの方が簡単でしょう。
    • good
    • 1
この回答へのお礼

ありがとうございます。

上手く行きました。
InStrの第二引数は数字しか受け取らないものだと思っておりました。

お礼日時:2018/12/26 11:03

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A