正規表現検索とは

 正規表現とは、1つには定まらないけどある規則性を持った文字列を探すための表記法です。UNIXのコマンドやPerlなどで使われています。ワイルドカードの豪華版みたいな物だと考えてください。

 正規表現では、色々な記号が特殊な意味を持ちます。いくつか例を挙げます。

特殊記号 意味 例の意味
. 任意の1文字 h.t hot とか hit とか hat とか。
* 直前の文字の0回以上の繰り返し he*lp hlp とか help とか heeeeeeeelp とか。
? 直前の文字は省略可能 he?lp hlp または help
[ 〜 ] [ ]の中のどれか1文字 [新嬉楽]しい 新しい または 嬉しい または 楽しい
[a-c] aからcまでの1文字 問題[a-c] 問題a または 問題b または 問題c
( 〜 ) ( )内を1文字扱い (おら)*。 おら。 とか おらおらおらおらおら。 とか。

 もう少し高度な例を挙げます。

検索文字列 置換文字列 意味
<H1>.*?</H1> <H1>で始まり</H1>で終わる文字列を検索。
inter(national|net) internationalinternet を検索。
^はろー。$ はろー。 という行を検索。
\<inter\w*\> inter で始まる単語を検索。
<H1>(.*?)</H1> <H1>\u\1</H1> <H1></H1> の中身を大文字に変換。

 正規表現で *? などを使うと特殊記号とみなされてしまいます。文字通りの *? を表現するには \*\? の様に頭に \ を付けます。

 使える正規表現の一覧はこちら

 正規表現についてより詳しくは書籍「正規表現の達人」(ソフトバンクパブリッシング)などをご覧ください。

※[…]はウィンドウ内のボタンやメニューを、<…>はキーボードのキーを表します。