Выключэнні ўнутры набораў у рэгулярках у рэгулярках PHP
Вы ўжо ведаеце, што спецсімвалы ўнутры []
становяцца звычайнымі сімваламі. Ёсць, аднак,
выключэнні: калі вам патрэбныя квадратныя дужкі
як сімвалы, то іх трэба экранаваць адваротным
слэшам.
Для прыкладу ў наступным кодзе шаблон пошуку выглядае так: паміж іксамі стаіць квадратная дужка:
<?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]';
?>
Напішыце рэгулярку, якая знойдзе радкі
ў любых дужках і заменіць іх на '!'
.