![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
Alex103 |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 416 Регистрация: 5.1.2005 Где: Украина, г. Харьк ов Репутация: нет Всего: нет |
Добрый день, подскажите пожалуйста как написать регулярное выражение для следующей задачи.
Есть HTML страничка:
Мне необходимо на ней заменить список с новостями обновленным, вот таким:
Пишу следующее:
Не работает. Вопрос - почему? -------------------- Мой адресс не дом и не улица, мой адресс WWW |
||||||
|
|||||||
patap |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 893 Регистрация: 7.5.2005 Где: Украина, Зп Репутация: 26 Всего: 40 |
ну в смысле
1. неправильная регулярка 2. нужно добавить модификатор s, чтобы метасимвол '.' включал в свое определение переводы строк Это сообщение отредактировал(а) patap - 5.7.2010, 14:23 -------------------- На боку кобура болталась, сзади шашка отцовская звякала. Впереди меня все хохотало, а позади все плакало (с) |
||||||
|
|||||||
Alex103 |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 416 Регистрация: 5.1.2005 Где: Украина, г. Харьк ов Репутация: нет Всего: нет |
Сработало, но теперь поясните пожалуйста почему? Ведь * обозначает любой символ зачем здесь: . и ? одиночный символ? И что значит ключ s? Это сообщение отредактировал(а) Alex103 - 5.7.2010, 14:21 -------------------- Мой адресс не дом и не улица, мой адресс WWW |
||||||
|
|||||||
bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
||||
|
||||
patap |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 893 Регистрация: 7.5.2005 Где: Украина, Зп Репутация: 26 Всего: 40 |
1. неправильная регулярка
2. нужно добавить модификатор s, чтобы метасимвол '.' включал в свое определение переводы строк . - любой символ * - от нуля и более .*? - ленивая квантификация если использовать жадную (.*) то результат может оказаться не таким как ожидаем, к примеру есть такой текст, нужно заменить каждый из блоков
1. Жадная квантификация (<ul class="vert-declarations">.*</ul>) - вернет от открывающего <ul и до последнего закрывающего тега </ul>
2. ленивая - (<ul class="vert-declarations">.*?</ul>) вернет один блок
тут можешь почитать про жадную, ленивую и др модификаторы -------------------- На боку кобура болталась, сзади шашка отцовская звякала. Впереди меня все хохотало, а позади все плакало (с) |
||||||
|
|||||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |