Escaping delimiters in PHP
Ako simbol nije specijalan, onda, kada ga koristite kao delimiter, trebaće da ga eskeipirate u samom regex-u. Pogledajmo na primeru.
Neka u našem slučaju kao delimiteri budu tačke (rešetke), a unutar regex-a tražimo simbol ampersand. Pošto ampersand nije specijalan simbol, nećemo ga eskeipirati:
<?php
echo preg_replace('#a&b#', '!', 'a&b'); // ispisaće '!'
?>
Neka sada delimiteri budu ampersandi i unutar regex-a nam je takođe potreban ampersand. U tom slučaju ampersand unutar regex-a moramo da eskeipiramo, inače će to izazvati grešku u PHP-u:
<?php
echo preg_replace('&a\&b&', '!', 'a&b'); // ispisaće '!'
?>
Ispravite grešku, napravljenu u sledećem kodu:
<?php
echo preg_replace('#a#b#', '!', 'a#b');
?>