Регулярка со смешанным типом данных

Статус
В этой теме нельзя размещать новые ответы.

LEXAlForpostl

Мой дом здесь!
Регистрация
21 Май 2008
Сообщения
766
Реакции
228
Здравствуйте.
Подскажите, пожалуйста, регулярное выражение, которое бы находило тексты след видов:
11 слово-лала
1-5 слово-ловолово
слово-трюлюлю

Думал
PHP:
preg_match ("|[0-9-] слово[а-я-]|is",$text);
Но последний вариант данная регулярка не спарсивает.
Как "объяснить" регулярке,что поиск цифр не обязателен?
 
Здравствуйте.
Подскажите, пожалуйста, регулярное выражение, которое бы находило тексты след видов:
11 слово-лала
1-5 слово-ловолово
слово-трюлюлю

Думал
PHP:
preg_match ("|[0-9-] слово[а-я-]|is",$text);
Но последний вариант данная регулярка не спарсивает.
Как "объяснить" регулярке,что поиск цифр не обязателен?
* - квантификатор, означающий ноль или более вхождений
\s - любой пробельный символ
дальше думаю сам догадаешься
 
Ещё вопрос.
Как в preg_replace ("|[0-9-] слово[а-я-]|is",'<b>'.Как здесь указать результат поиска регулярки?.'</b>',$text);
 
preg_replace ("|([0-9-] слово[а-я-])|is",'<b>$1</b>',$text);

а вообще, судя по задаче, как то так надо: preg_replace ("|(([\d- ]+)?слово[а-я-]+)|is", '<b>$1</b>', $text);
 
preg_replace ("|([0-9-] слово[а-я-])|is",'<b>$1</b>',$text);
а вообще, судя по задаче, как то так надо: preg_replace ("|(([\d- ]+)?слово[а-я-]+)|is", '<b>$1</b>', $text);
Правильней вот так:
Код:
preg_replace ("|(([B][COLOR="Red"]?:[/COLOR][/B][\d- ]+)?слово[а-я-]+)|is", '<b>$1</b>', $text);
Чтоб не запоминать этот паттерн...
 
PHP:
preg_replace ("|((?:[\d- ]+)?слово[а-я-]+)|is", '<b>$1</b>', $text);
Он так только удаляет найденное слово.
 
PHP самой последней версии ;)
надо было $0 вместо $1
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху