異なる複数の単語をgrep検索
No.32684
Cyber
さん 13/10/29 15:42
一文の中で、異なる複数の単語をgrep検索するにはどうすればいいですか?
[
△
]
RE:32684 異なる複数の単語をgrep検索
No.32685
秀丸担当
さん 13/10/29 16:37
複数の単語のいずれか1つがある行ということだとしたら、正規表現で
first|second
や
first|second|third
といったように「|」を使うとできます。
複数の単語の全てがある行ということだとしたら、正規表現でいわゆるAND検索
/論理積するという書き方そのものは無いので、いろいろ組み合わせて記述する
必要があります。
1つの方法として、.*を間にはさんで書く方法が考えられます。
どちらが先にきてもいいように2つのパターンを書きます。
(first.*second)|(second.*first)
ただ、これだと3つ以上だとかなり複雑になってしまいます。
3つ以上の場合は後方一致の(?=)を使った以下の書き方ができます。
^(?=.*first)(?=.*second)(?=.*third).*$
[
△
]
RE:32684 異なる複数の単語をgrep検索
No.32689
山紫水明
さん 13/10/30 20:49
Cyberさん,
>一文の中で、異なる複数の単語をgrep検索するにはどうすればいいですか?
マクロでよろしければ,秀丸エディタマクロライブラリにある拙作マクロ
「スペース区切りで複数語GREPができるマクロ 」をお試し下さい。
山紫水明
SANSHISUIMEI
[
△
]