Команда \b
обозначает начало или конец
слова, а \B
, соответственно, - не
начало и не конец слова. Что такое слово?
На первый взгляд кажется, что это нечто,
ограниченное пробелами, но это не совсем так.
Посмотрите на следующую строку: 'мама
мыла раму'
. Подстрока 'мыла'
-
это слово (по обоим краям пробелы), однако
и 'мама'
, и 'раму'
тоже слова,
которые стоят в начале и в конце строки.
Давайте посмотрим на практическое применение данной команды.
В следующем примере шаблон поиска такой:
начало слова, маленькие латинские буквы
один или более раз, конец слова. Таким
образом, регулярка найдет все слова и заменит
их на '!'
:
<?php
echo preg_replace('#\b[a-z]+\b#', '!', 'axx bxx xxx exx'); // выведет '! ! ! !'
?>
Дана строка:
<?php
$str = 'aaa xaa aaa xbb aaa';
?>
Напишите регулярку, которая найдет строки
по шаблону: буква 'x'
в начале
слова.