Ribojančiųjų simbolių ekranavimas PHP
Jei simbolis nėra specialusis, tai, kai jūs naudojate jį kaip ribojantįjį simbolį, jį reikės ekranuoti pačioje reguliariojoje išraiškoje. Pažiūrėkime pavyzdžiu.
Tarkime, kad kaip ribojantieji simboliai veikia grota, o reguliariojoje išraiškoje mes ieškome ampersando simbolio. Kadangi ampersandas nėra specialiuoju simboliu, tai mes jo neekranuojame:
<?php
echo preg_replace('#a&b#', '!', 'a&b'); // išvestų '!'
?>
Tarkime, kad ribojantieji simboliai dabar - ampersandai ir reguliariojoje išraiškoje mums taip pat reikia ampersando. Tokiu atveju ampersandą viduje tenka ekranuoti, kitaip tai sukels PHP klaidą:
<?php
echo preg_replace('&a\&b&', '!', 'a&b'); // išvestų '!'
?>
Ištaisykite klaidą, padarytą šiame kode:
<?php
echo preg_replace('#a#b#', '!', 'a#b');
?>