Всем привет.
Плохо разбираюсь в регулярках, поэтому зависла на, казалось бы, простой задаче. Нужно находить в тексте определенное слово (буквы в любом регистре) - но так, чтобы оно не являлось подстрокой, а было отдельным словом.
Никак не могу найти подходящий пример для такого простого дела. Помогите, пожалуйста!
Black Jack: \b -- за вас все сделает. Он для этого и создан, что отдельно слова выделять. А вы там, сами пробелы поставили. К тому же. Чтобы отделить слово нужно тогда к тексту добавить пробелы в начале и в конце текста, чтобы ваша регулярка сработала. Этого можно избежать, если добавить multiline, но все равно для таких вещей есть уже готовая управляющая функция.
Конкретно в таком виде выдаёт false совпадений при очевидном наличии искомого слова.
preg_match_all("|\bАГЕНТСТВА\b|gim", "Квартира от АГЕНТСТВА", $matches);
Виктория: эт ужобный тестер регулярок. Так же там есть пользовательские варианты, которые можно найти по клчюевым словам. Во вкладке Community находится. Это не решение вашего вопроса, а помощник на будущее.