Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2007.04.29;
Скачать: [xml.tar.bz2];

Вниз

Регулярный выражения и php   Найти похожие ветки 

 
Nous Mellon_   (2007-04-03 14:05) [0]

Здравствуйте, друзья. Озабочен такими нубскими вопросами по php:

В своем скрипте паршу некоторый html файл. К примеру, в нем есть два блока с html комментариями "<!--zzz-->" и "<!--ppp-->". Между этими блоками много разного hmtl кода. Как мне построить паттерн для preg_replace чтобы он вырезал весь этот блок от начала до конца вместе с содержимым? При условии, что код страницы в строке. т.е. Там должно получится что-то вроде
$text = preg_replace($pattern, "", $text); Вот с формированием этого $pattern и вся засада, я не силен в регулярах, поэтому измучился уже весь...

Надеюсь на вашу помощь


 
xayam ©   (2007-04-03 14:14) [1]

Для RegExpr примерно так будет

<!--zzz-->(.*?)<!--ppp-->

"." - это любой символ
"*" - это значит любое количество раз и ни разу в том числе
"?" - это включает не жадный режим

Как на Php эти символы обозначаются незнаю


 
umbra ©   (2007-04-03 14:27) [2]

про php не знаю, но в перле паттерн выглядел бы как
^<!--zzz-->(.*\n)*<!--ppp-->$

\n - символ конца строки


 
McSimm_   (2007-04-03 14:30) [3]

$text = preg_replace("/<!--zzz-->(.*?)<!--ppp-->/s", "", $text);

модификатор s необходим, чтобы переводы строк захватывались точкой


 
McSimm_   (2007-04-03 14:33) [4]


> umbra ©   (03.04.07 14:27) [2]

^ и $ зачем ?


 
umbra ©   (2007-04-03 14:35) [5]

да пожалуй, что лишние. :)


 
Nous Mellon_   (2007-04-03 14:36) [6]

Спасибо огромное всем, друзья, и особенно Максиму, код которого сработал на 100%. Спасибо



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2007.04.29;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.046 c
3-1171277582
petvv
2007-02-12 13:53
2007.04.29
insert into <....> select <...> union select <...> = грабли


2-1176017971
dreamse
2007-04-08 11:39
2007.04.29
Как создать каталог со вложеными подкаталогами если мы имеем


2-1175855454
voe
2007-04-06 14:30
2007.04.29
Определение типа данных.


15-1175435176
isasa
2007-04-01 17:46
2007.04.29
Многопоточная задача канадских лесорубов.


2-1175946952
kilonet
2007-04-07 15:55
2007.04.29
Отладка





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский