preg_replace и переход на новую строчку

IvanKut

Приветствую

Такое выражение отрабатывает, если текст не содержит переходов на новую строчку

Код (Text):
  1. $str=»{p_sq_delivery_login}asdasd{/p_sq_delivery_login}»;
  2. echo preg_replace(‘/{p_(.*?)}(.*?){/p_(.*?)}/i’, », $str);

А вот такой уже нет

Код (Text):
  1. $str=»{p_sq_delivery_login}asdasd
  2. Есть новая строчка
  3. {/p_sq_delivery_login}»;
  4. echo preg_replace(‘/{p_(.*?)}(.*?){/p_(.*?)}/i’, », $str);

То есть как в тексте появляется переход на новую строчку регулярка ломается. Подскажите плиз, почему так происходит?
Благодарю

 

miketomlin

По дефолту точка означает все кроме разделителей строк. Чтобы учитывать разделители, добавь модификатор /s ;)

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *