Изключения внутри наборы в регулярни изрази в регулярни изрази PHP
Вече знаете, че специалните символи внутри []
стават обикновени символи. Има обаче
изключения: ако имате нужда от квадратни скобки
като символи, тогава те трябва да бъдат екранирани с обратна
наклонена черта.
За пример в следващия код шаблонът за търсене изглежда така: между x-овете стои квадратна скоба:
<?php
$str = 'x]x xax x[x x1x';
$res = preg_replace('#x[\[\]]x#', '!', $str);
?>
В резултат в променливата ще бъде записано следното:
'! xax ! x1x'
Даден е низ:
<?php
$str = 'x[]z x{}z x.z x()z';
?>
Напишете регулярен израз, който ще намери всички думи
по шаблон: буква 'x', след това произволно
количество произволни скоби, след това буква 'z'.
Даден е низ:
<?php
$str = '[abc] {abc} abc (abc) [abc]';
?>
Напишете регулярен израз, който ще намери низовете
във всякакви скоби и ще ги замени с '!'.