・記号列の集合を表わす方法の一つ. 有限オートマトンで受理される言語は正規表現で表わすことができる。
・正規表現はその性質からテクスト処理のパターンマッチに広く利用されている. ただし, パターンマッチで利用される "正規表現" は多くの拡張が加えられているため, 学問的な意味での "正規表現" ではない。
・正規表現は様々なソフトで利用可能であるが, あるソフトでは選択を表わすメタ文字 "|" が別のソフトでは通常の文字として扱われるなど, ソフトによってその機能が異なる
※コラム(メタキャラ)
実際に検索パターン利用できる表現文字(メタ文字と呼ばれる)には、主なものとして次のようなものがある。
^ | 先頭 (行指向の場合は行頭) にマッチ |
---|---|
$ | 末尾 (行指向の場合は行末) にマッチ |
. | 任意の1文字 |
[...] | [] に含まれる任意の1文字 (文字クラス) |
[^...] | [] に含まれない任意の1文字 (否定文字クラス) |
* | 直前にある正規表現の0回以上のくり返し |
+ | 直前にある正規表現の1回以上のくり返し |
| | いずれかの正規表現 (選択) |
\ | 次に来る文字を文字として扱う (メタ性を失わせる) |
(その他の文字はそれ自身を表わす正規表現である.) |
moe | "moe" が含まれる文字列 (行) にマッチ |
---|---|
^moe$ | "moe" という文字列 (行) にマッチ |
^$ | 空文字列 (空行) にマッチ |