![]() |
|
Модераторы: Aliance, skyboy, MoLeX, ksnk |
![]()
|
|
| DOKA |
|
||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 13.8.2006 Репутация: нет Всего: нет |
Добрый день!
Начал работать с PHP и столкнулся с данной проблемой: неверно обрабатывается многострочный текст при использовании регулярных выражений. При этом мой паттерн нормально работает в дебаггере регекспов (Kodos) и я применяю модификатор /ms Вот пример использования паттерна:
Смысл: удалить все вхождения {{какой-то текст}} На данном тексте всё работает правильно:
А этот пример отрабатывает странно:
Т.е. удаление происходит, но только первой строки из найденого выражения! Помогите, пожалуйтста, побороть. |
||||||
|
|||||||
| enof |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 837 Регистрация: 23.1.2009 Где: Санкт-Петербург Репутация: 1 Всего: 35 |
DOKA,
модификатор m служит для того, чтобы символы начала и конца строк совпадали не только с концом и началом текста, но символов переноса строки. Вам нужен модификатор s - тогда точка будет совпадать и с символами переноса строк. Без него точка совпадает с любым символом, кроме переноса строки, соответственно у вас и удаляется до переноса строки. |
|||
|
||||
| DOKA |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 13.8.2006 Репутация: нет Всего: нет |
Я в первом посте указал, что использую и m и s: уже и так и сяк перепробывал, всё равно происходит поведение указанное в первом посте :( |
|||
|
||||
| enof |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 837 Регистрация: 23.1.2009 Где: Санкт-Петербург Репутация: 1 Всего: 35 |
DOKA, сорри, не заметил.
|
|||
|
||||
| DOKA |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 13.8.2006 Репутация: нет Всего: нет |
Неа, так тоже не помогает... |
||||
|
|||||
| enof |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 837 Регистрация: 23.1.2009 Где: Санкт-Петербург Репутация: 1 Всего: 35 |
работает |
|||
|
||||
| DOKA |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 68 Регистрация: 13.8.2006 Репутация: нет Всего: нет |
Хм, действительно работает. Просто оказалось, что у меня есть вложенные структуры и поэтому выход всё равно оказался невалидным. Но это уже решаемо
Спасибо! |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Тексты | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |