Модификатор X
делает так, что экранировка
обычного символа приведет к ошибке. Без этого
оператора обычные символы можно экранировать,
они все равно будут обозначать сами себя
(исключение: цифры, они станут карманами).
Посмотрим на примере:
<?php
preg_replace('#x\@x#X', '!', 'x@x'); // ошибка, @ не спецсимвол
?>