Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: C regex'ом помогите, плиз.
цитата
22/10/07 в 12:24
 Юнга
Нужно вытянуть все что между
{PARAGRAPH} и {/PARAGRAPH}, включая переводы строки, то бишь все вообще.
Вот такая конструкция
"{PARAGRAPH} (.*?){/PARAGRAPH}"
работает, но переводы строки ессесно не ловит.

Че-то перечитал пару мануалов - но никак не соображу - как это правильно написать? smail35.gif
цитата
22/10/07 в 12:42
 dm
нужен multiline модификатор для regex'a, что бы переводы строки не учитывал
/m для перла, PCRE_MULTILINE для php

тут например посмотри
http://www.php.net/manual/ru/reference.pcre.pattern.modifiers.php
цитата
22/10/07 в 15:15
 Юнга
Спасибо.

Однако как-то неудобно сделано, фишки - почему нет подстановки для "ващелюбойсимвол" - не понял. smail35.gif
цитата
22/10/07 в 17:11
 Kn
как вариант замени в начале переводы строки на все что угодна например на #PEREVODSTROKI# а потом когда разобьешь сделай обратную замену))
цитата
22/10/07 в 17:39
 Formator
Чё за сложности. Запрос у ТС не жадный, плюс нет модификатора. Если это php, то:

Код:
preg_match_all("/\{PARAGRAPH\} (.*?)\{\/PARAGRAPH\}/s",$matches,$text);
цитата
22/10/07 в 17:47
 Юнга
CJLOG писал:


Код:
preg_match_all("/\{PARAGRAPH\} (.*?)\{\/PARAGRAPH\}/s",$matches,$text);


нет, это .NET - но там все в общем "по образу и подобию".
Спасибо, буду пробовать всячески.
Всем - качественный рейтинг и улучшенная карма. icon_smile.gif
цитата
23/10/07 в 12:15
 benzole
preg_match("/PARAGRAPHstart(.*?)PARAGRAPHend/ims", $result)
цитата
23/10/07 в 12:27
 Юнга
benzole писал:
preg_match("/PARAGRAPHstart(.*?)PARAGRAPHend/ims", $result)


Че-то это не сработало. icon_sad.gif А как оно должно действовать?

Ща пока схитрил слегка, поскольку текста однозначно англоязычные планируются, то сделал так вот
Код:
"{PARAGRAPH([^Я]*?){/PARAGRAPH}". 

icon_smile.gif


Эта страница в полной версии