6. 正規表現による検索パターンの例正規表現の使用例をいくつか挙げておきます。まだ正規表現についてよく イメージがわかない人は、これらを自分で書く時の参考にして下さい。 以下は秀丸エディタの正規表現です。他のツールでは書式が異なる 場合もあります。 → 正規表現の対照表 |
6−1 行処理関係
\n改行位置を検索します。^$空行を検索します。^\n\n2行続きの空行を検索します。^\n\n+2行以上空行が続くところを検索します。
6−2 日本語( Shift-JIS )の例
[ぁ-ん]すべてのひらがなを検索します。[ぁ-ヶ]すべてのかな(平仮名+片仮名)を検索します。[亜-K]すべての漢字(IBM拡張漢字まで)を検索します。
(0?[1-9]|1[0-2])月(0?[1-9]|[12][0-9]|3[01])日1月26日 12月9日 などにマッチします。 13月 20月 32日 月日 などにはマッチしません。 ただし 2月30日 9日31日 などにはマッチします。 (十[一ニ]?|[一ニ三四五六七八九])月(三十一?|二?十?[一ニ三四五六七八九]?)日 一月二十六日 十二月九日 などにマッチします。 十三月 月日 などにはマッチしません。 ただし ニ月三十日 九月三十一日 などにはマッチします。 漢数字は連続した文字コードではないので、[一-十]では 正しくマッチしません。 現実にはこんなシビアなパターンでなくとも、 [0-9]+月[0-9]+日 [一ニ三四五六七八九十]+月[一ニ三四五六七八九十]+日 .月.+日 程度で、実用上十分役に立つと思います。
(ましか|ま?せ)ば[^。」]+まし古文から反実仮想の表現を検索します。[^。」]+は、複数の文にまたがったパターンにを検索して しまわないために必要です。[^。」]+ましをつけない場合、 見せばや 等にもマッチす る可能性が高くなります。
6−3 英数字のみの例(1バイト文字)
\.(txt|TXT).txt または .TXT を検索。 正規表現が有効の場合、.は「任意の1文字」という意味を 表すメタ文字なので、文字としてのピリオド自体にマッチさ せるには、\.と記述する必要があります。
[Yy]ou(r|rs|rself|rselves)?\>英文から you/your/yours/yourself/yourselves を 検索します。語頭が大文字でもマッチします。\>がないと、young youth などにも一致してしまいます。
\<([Gg]o(ne|in[g']|nna)?|went)\>英文から go とその過去形、過去分詞、現在分詞を検索し ます。このパターンでは GO には一致しません。\< \>がないと、god ago twenty などにも一致してし まいます。