![]() |
|
Модераторы: Aliance, skyboy, MoLeX, ksnk |
![]()
|
|
| G0rin |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 6.4.2010 Репутация: нет Всего: нет |
возникла проблема, к примеру есть код
я ожидаю что в $arr[0] будет "начало", но он выдает строку "начало конец" тоесть удаляет мою регулярку вместо разбития строки на части до и после выражения. Я ен правельно поинмаю работу preg_split? |
|||
|
||||
| enoff |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 30.6.2010 Где: Санкт-Петербург Репутация: 1 Всего: 13 |
||||
|
||||
| G0rin |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 6.4.2010 Репутация: нет Всего: нет |
с экранированием да, можно и /<!--block\sexpire .*-->$/ но в целом я как понимаю это суть не меняет, работает в итоге также
|
|||
|
||||
| enoff |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 297 Регистрация: 30.6.2010 Где: Санкт-Петербург Репутация: 1 Всего: 13 |
G0rin, в данном случае работает так, как и должно, если посмотреть на регулярку.
знак доллара в конце обозначает конец строки, соответственно конец регулярки == символы "-->" за которомы следует конец строки. данное рв не совпадает с приведенным текстом, поэтому при разбиении получается один элемент, который является всей строкой. более того, .* - сожрет все, что можно, нужно инвертировать жадность. либо .*?, либо глобально - .* и модификатор U. |
|||
|
||||
| G0rin |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 26 Регистрация: 6.4.2010 Репутация: нет Всего: нет |
enoff, спасибо, понятно теперь
|
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Тексты | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |