Не могу понять, почему регулярка не срабатывает для последней строки?
[^a-zA-Zа-яА-Я]уфа([^a-zA-Zа-яА-Я]|$)
Manufacturing
asdasdуфаавпвап true
!!! ...уфа... !!!!! true
sdf уфа true
уфа false
Вот здесь можно потыкать интерактивный вариант: https://regex101.com/r/9fNMkj/1
Используйте последовательность символов \b
, обозначающих границу слова:
$str = 'Manufacturing
asdasdуфаавпвап
!!! ...уфа... !!!!!
sdf уфа
уфа';
$patt = '~\bуфа\b~u';
preg_match_all($patt, $str, $arr);
var_dump($arr);
Ты уже проверяешь на конец строки, но не проверяшь на начало. Надо так:
(^|[^a-zA-Zа-яА-Я])уфа([^a-zA-Zа-яА-Я]|$)
Но вообще подозреваю, что правильнее было бы использовать \b
:
\bуфа\b
Вот так вот надо:
(^|\s*|[^a-zA-Zа-яА-Я0-9ёЁ])уфа([^a-zA-Zа-яА-Я0-9ёЁ]|\s+|$)
\s
- пробельный символ
^
- начало строки
$
- конец строки
ёЁ
- не забываем любимую букву
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть форма регистрации с некоторым числом полейЕсть обработчик, в котором что-то типа:
У меня проблема с кодом, когда нажимаю кнопку добавить тарифный план - пишет, что не все поля заполнены
Добрый вечерПодскажите, пожалуйста, код (php), который будет удалять пустые строки в конце файла
Как отличить JSON запрос от POST(тот который $_POST['Значение']) ? Например если приходит JSON то делать одно действие, а если пост то делать с ним другое