正規表現 / 前後読み

メモ

パターン 名称 概要 説明
(?=pattern) 肯定先読み pattern に一致する文字列が始まる位置にある検索文字列と一致 x(?=abc) は、abc が後に続く場合のみ `x' に一致
(?!pattern) 否定先読み pattern に一致しない文字列が始まる位置にある検索文字列と一致 x(?!abc) は、abc が後に続かない場合のみ `x' に一致
(?<=pattern) 肯定後読み pattern に一致する文字列で終わる位置にある検索文字列と一致 (?<=abc)x は、abc の後に続く場合のみ `x' に一致
(?<!pattern) 否定後読み pattern に一致しない文字列で終わる位置にある検索文字列と一致 (?<!abc)x は、abc の後に続かない場合のみ `x' に一致
  • 一致した文字列は記憶されず、後方参照できない。
  • pattern に改行を含めることはできない。

参照元
http://tm.root-n.com/programming:php:regex:special_constructs