Конец или начало слова в регулярках PHP

Команда \b обозначает начало или конец слова, а \B, соответственно, - не начало и не конец слова. Что такое слово? На первый взгляд кажется, что это нечто, ограниченное пробелами, но это не совсем так.

Посмотрите на следующую строку: house with fence. Подстрока 'with' - это слово (по обоим краям пробелы), однако и 'house', и 'fence' тоже слова, которые стоят в начале и в конце строки.

Давайте посмотрим на практическое применение данной команды.

В следующем примере шаблон поиска такой: начало слова, маленькие латинские буквы один или более раз, конец слова. Таким образом, регулярка найдет все слова и заменит их на '!':

php<?php
  echo preg_replace('#\b[a-z]+\b#', '!', 'axx bxx xxx exx'); // выведет '! ! ! !'
?>
Задание 1

Дана строка:

php<?php
  $str = 'aaa xaa aaa xbb aaa';
?>

Напишите регулярку, которая найдет строки по шаблону: буква 'x' в начале слова.