柔軟な文字列処理を簡潔に記述することができるシステム
繰り返しや特定の種類の文字などをメタ文字で表し、
対象としたい文字列のパターンを簡潔に記述できる。
Perl
意味 | メタ文字 |
---|---|
後方参照用の囲い | () |
任意の文字 | . |
1個以上の繰り返し | + |
0個以上の繰り返し | * |
1つあるかないか or 最小マッチ | ? |
空白 | \s |
区切り文字 | \b |
エスケープは\で行います。
後方参照とは、マッチや置換のときに使ったパターンの中で、
()で囲まれた部分を保存し、後から参照できる機構です。
正規表現の強力な特徴。
$&
$1,$2,$3 .. $n
Perlなどでしか使えない可能性が高い。
(?: )
Perl(標準)
$theVar =~ m/マッチパターン/オプション; #マッチ match $theVar =~ s/置換パターン/置換後パターン/オプション; #置換 substitue
PHP(標準)
perl互換関数
$string = preg_replace(/置換パターン/,"置換後パターン" , $string);
JavaScript,JScript
VisualBasic?.NET |
C++ に Boost regexライブラリ |
パターン部に変数が入っている場合は、その変数の中に正規表現文字が入る可能性が
あるかどうか十分チェックすること。
正規表現文字を機能させたくない場合は、正規表現が機能しないstr_replaceを使うか、
事前に違う文字にエスケープさせておく。