Open1
正規表現
覚えづらい先読み/後読みアサーションの覚え方
マッチさせたい単語がx
とし、y
はマッチに含めない
-
x(?=y)
- 先読みアサーション。x
の後にy
が続く場合にx
にマッチ -
x(?!y)
- 否定先読みアサーション。x
の後にy
が続かない場合にx
にマッチ -
(?<=y)x
- 後読みアサーション。x
の前にy
がある場合にx
にマッチ -
(?<!y)x
- 否定後読みアサーション。x
の前にy
がない場合にx
にマッチ
- 上記4つのアサーションに共通しているのは
(?
〜)
- 後読みは
(?
の後に<
が続く 。 - 肯定しているのは
=
、
否定しているのは!
2の後に書こう
先読みはx
より先のy
を調べに行くから。
後読みは一旦x
までいってからx
の前にy
があるか後で調べるから。