Существуют специальные символы, которые обозначают
начало ^
или конец строки $
.
Давайте посмотрим их работу на примерах.
Пример
В данном примере шаблон поиска такой: заменить
'aaa'
на '!'
только, если оно
стоит в начале строки:
<?php
$str = 'aaa aaa aaa';
$res = preg_replace('#^aaa#', '!', $str);
?>
В результате в переменную запишется следующее:
'! aaa aaa'
Пример
В данном примере шаблон поиска такой: заменить
'aaa'
на '!'
только, если оно
стоит в конце строки:
<?php
$str = 'aaa aaa aaa';
$res = preg_replace('#aaa$#', '!', $str);
?>
В результате в переменную запишется следующее:
'aaa aaa !'
Пример
Когда в начале регулярки стоит ^
,
а в конце - $
, то таким образом мы
проверяем всю строку целиком на соответствие
регулярке.
В следующем примере шаблон поиска такой:
буква 'a'
повторяется один или
более раз, заменить всю строку на '!'
только она состоит из одних букв 'a'
.
<?php
$str = 'aaa';
$res = preg_replace('#^a+$#', '!', $str);
?>
В результате в переменную запишется следующее:
'!'
Практические задачи
Дана строка:
<?php
$str = 'abc def xyz';
?>
Напишите регулярку, которая найдет первую подстроку из букв.
Дана строка:
<?php
$str = 'abc def xyz';
?>
Напишите регулярку, которая найдет последнюю подстроку из букв.