PHPにおける正規表現での通常文字のエスケープ
修飾子 X は、通常文字のエスケープがエラーを引き起こすようにします。この演算子がない場合、通常文字はエスケープでき、それらは依然としてそれ自身を表します(例外:数字、それらはキャプチャグループになります)。例を見てみましょう:
<?php
preg_replace('#x\@x#X', '!', 'x@x'); // エラー、@ は特殊文字ではありません
?>
修飾子 X は、通常文字のエスケープがエラーを引き起こすようにします。この演算子がない場合、通常文字はエスケープでき、それらは依然としてそれ自身を表します(例外:数字、それらはキャプチャグループになります)。例を見てみましょう:
<?php
preg_replace('#x\@x#X', '!', 'x@x'); // エラー、@ は特殊文字ではありません
?>