Сімвал шапачкі ўнутры набораў у рэгулярках PHP
Як вы ведаеце, шапачка ўнутры []
робіць
адмаўленне, будучы напісанай у пачатку дужак.
Значыць, яна з'яўляецца спецсімвалам унутры
гэтых дужак. Каб атрымаць шапачку як сімвал,
трэба альбо заэкранаваць яе, альбо прыбраць з
першага месца.
Прыклад
У наступным прыкладзе шаблон пошуку такі:
першы сімвал - гэта ўсё акрамя 'd'
,
потым дзве літары 'x'
.
<?php
$str = 'axx bxx ^xx dxx';
$res = preg_replace('#[^d]xx#', '!', $str);
?>
У выніку ў зменную запішацца наступнае:
'! ! ! dxx'
Прыклад
А цяпер шаблон пошуку такі: першы сімвал
- гэта 'd'
альбо '^'
, потым дзве
літары 'x'
:
<?php
$str = 'axx bxx ^xx dxx';
$res = preg_replace('#[d^]xx#', '!', $str);
?>
У выніку ў зменную запішацца наступнае:
'axx bxx ! !'
Прыклад
Можна не прыбіраць шапачку з першага месца, а проста заэкранаваць яе з дапамогай адваротнага слэша, і яна стане абазначаць саму сябе:
<?php
$str = 'axx bxx ^xx dxx';
$res = preg_replace('#[\^d]xx#', '!', $str);
?>
У выніку ў зменную запішацца наступнае:
'axx bxx ! !'
Практычныя задачы
Дадзены радок:
<?php
$str = '^xx axx ^zz bkk @ss';
?>
Напішыце рэгулярку, якая знойдзе радкі па шаблоне: шапачка альбо сабака, а затым дзве лацінскія літары.
Дадзены радок:
<?php
$str = '^xx axx ^zz bkk @ss';
?>
Напішыце рэгулярку, якая знойдзе радкі па шаблоне: НЕ шапачка і не сабака, а затым дзве лацінскія літары.
Дадзены радок:
<?php
$str = '^xx axx ^zz bkk';
?>
Напішыце рэгулярку, якая знойдзе радкі па шаблоне: НЕ шапачка, а затым дзве лацінскія літары.