正規表現(Regexp)


REF http://perldoc/perl.org/perlre.html(Perl REGEP)


meta.文字


\ ^ . $ * ? | ( ) [ ] { }



Perl.固有の.MetaCharacter


\A : 文字列の先頭 ( 行頭ではなく ) \n, s の指定に関係なく 常に文字列の先頭にマッチ \c : 制御文字にマッチ \cd == c-d \G Global (g) と併用する 前回のマッチが終了した位置にマッチ \L-\E \L-\E の間の文字を小文字に変換 \l \u 次の文字を小(大)文字に変換 \Q-\E 間の文字を 通常文字として扱う \z 改行の有無に関係なく 文字列の末尾にマッチ \Z 文字列の末尾にマッチ 改行で終わるときは, 改行の直前にマッチ (#?comment) Comment を記述 ( 無視される ) (?:REGEXP) 後方参照が不要な場合の Group 指定 Text 保存の Overhead を避ける (?>REGEXP) マッチした部分を Backtrack しない ( Backtrack をしなくてもマッチできるならこれを利用する ) 繰り返しを指定した場合に (?i) (?m) (?s) (?x) PATTERN Modifier を REGEXP に埋め込む (?i)regex


量指定子


* : >= 0 + : >= 1 ? : (0|1) 回以上 {n} : n 回 {n,} :>= n 回以上 {n,m}:n 回以上 m回以下


特殊


\s : 空白 \S : 空白以外 \d : Digit ( 数字 ) \w : Word ( 文字 )


関数


SYNTAX pos() DESC m//g が前回マッチした Offset をかえす SYNTAX quotemeta() DESC MetaCharacter にすべての \ をつける SYNTAX split() DESC PATTERN にマッチした区切り文字で 文字列を分解 SYNTAX study() DESC PATTERN マッチする 文字列の内容を予習する SYNTAX grep() DESC LIST の中からマッチした要素をかえす