Keep pattern (3)
Keep patternの仕様について気になっていた点があったので、PCRE 7.2ではどうなっているのか調べてみた。
/()(a\Kb)/ =~ "ab" # (1,2), (0,0), (0,2) /(?=ab\K)ab/ =~ "ab" # (0,2) /(?<=\Ka)b/ =~ "ab" # compile error
この結果から、PCREでの\Kは
- captureには影響を与えない
- look-forwardの中に書いても効果は無い
- look-behindの中に書けない
となっているようだ。