Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Помогите с

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
cvet
Отправлено: 01 Декабря, 2009 - 15:23:51
Post Id


Новичок


Покинул форум
Сообщений всего: 1
Дата рег-ции: Дек. 2009  


Помог: 0 раз(а)




Имеется текст примерно такого вида
PHP:
скопировать код в буфер обмена
  1. $str="<!-- bloc1--><span>blablabla
  2. <span>blablabla1</span>
  3. <span>blablabla2</span>
  4. </span>blablabla3<!-- bloc2 -->";
  5.  
  6. $str=preg_replace(array("@<!-- bloc1 --><span>@","@</span>.*<!-- bloc2 -->@"), "", $str);
  7.  


В результате хотелось бы получить
CODE (text):
скопировать код в буфер обмена
  1. <span>blablabla1</span>
  2. <span>blablabla2</span>
, однако получается

Понимаю что регулярка начинает поиск с начала а не с конца, однако как можно получить желаемый результат?

(Отредактировано автором: 01 Декабря, 2009 - 15:27:55)

 
 Top
trot
Отправлено: 01 Декабря, 2009 - 21:48:39
Post Id


Новичок


Покинул форум
Сообщений всего: 34
Дата рег-ции: Нояб. 2009  


Помог: 0 раз(а)




Постановка задачи не достаточна четкая.

Если относиться буквально к тому,что у вас вызвало затруднение, то
можете использовать следующий вариант

CODE (text):
скопировать код в буфер обмена
  1. $str=preg_replace("@<!-- bloc1--><span>.*?(<span>.*)</span>.*<!-- bloc2 -->@s", "\\1", $str);


Этот вариант применим только для предложенному тексту и требуемому результату.
Для составления более гибкого и эффективного шаблона попытайтесь изложить требования к результату и требования к исходному тексту, который вы мачите.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Регулярные выражения »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB