Сімвал шапачкі ўнутры набораў у рэгулярках 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';
?>
Напішыце рэгулярку, якая знойдзе радкі па шаблоне: НЕ шапачка, а затым дзве лацінскія літары.