正規表現メモ

忘れがちなのでまとめておく。
基本的な部分はどこのサイトにでも載っているので割愛。

  • 後方参照 $n,\n
    グループ化した部分文字列を後で利用
    • パターン内で
      /(A)b\1/ → AbAにマッチ
    • 置換文字列内で
      /(A)b\1/, $1 → Aとなる
  • 非格納グループ化 (?:…)
    内部でキャッシュされない
  • 後読み (?<…), (!<…)
    /(?/(!
  • 先読み (?=…), (?!…)
    /hoge(?=fuga)/ → fugaが後に続くhogeにマッチ
    /hoge(?!fuga)/ → fugaが後に続かないhogeにマッチ


Perl正規表現

パターン 意味
(?=XXX) ゼロ幅肯定先読み表現。パターンの後にXXXがある場合にマッチ
(?!XXX) ゼロ幅否定先読み表現。パターンの後にXXXが無い場合にマッチ
(? ゼロ幅肯定後読み表現。パターンの前にXXXがある場合にマッチ
(! ゼロ幅否定後読み表現。パターンの前にXXXが無い場合にマッチ


正規表現 エンジン・ライブラリ

名前 コメント
K2Regexp K2Editor
Irregexp Google Chrome
PCRE(Perl Compatible Regular Expression) Webkit, PHP
JPCRE Webkit?
RE2 Google
鬼車(Oniguruma) 小迫氏作, Ruby
Carakan Opera
Futhark Opera
jre.dll 山田和夫氏作, 秀丸エディタ, EmEditor
hmjre.dll 秀まるお作, 秀丸エディタ
Bregexp SakuraEditor
WREC(the Webkit Regular Expression Compiler) SquirrerlFish Extreme


参考URL
後日書く。
忘れた…