Задача вывести предложение с искомым словом.
Вообщем пытался с помощью регулярок, другово выхода не вижу.
$tmp=~/\.(.* $sw\S+ \S+ \S+ \S+ \S+)/i;
$desc=$1;
Но это не рационально, но если точки нет?
вообщем в тупик встал :)
[Perl] По-моему, вполне решаемо при помощи perlre03.05.03 14:42 Автор: Ktirf <Æ Rusakov> Статус: Elderman
> Задача вывести предложение с искомым словом. > Вообщем пытался с помощью регулярок, другово выхода не > вижу. > $tmp=~/\.(.* $sw\S+ \S+ \S+ \S+ \S+)/i; > $desc=$1; > Но это не рационально, но если точки нет? А что такого, если точки нет? Я другого не пойму, а каков смысл в череде \S+? Сформулируй точно задачу, плиз: входные условия и желаемый результат. Когда пишешь регекспы, это первая вещь.
Кстати, твое регулярное выражение не работает. Оно находит первую попавшуюся точку и садит без остановки до твоего слова :)
> вообщем в тупик встал :) Если ты решил задачу - почему тупик? :)
С ходу нужный регексп не написался, сейчас еще немного поторможу, а пока рекомендуемая литература: Фридл, "Регулярные выражения". Недавно в "Питере" второе издание вышло.