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
Форумы портала PHP.SU :: Версия для печати :: Вырезка текста между тегами
Форумы портала PHP.SU » PHP » Регулярные выражения » Вырезка текста между тегами

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

1. will123 - 12 Октября, 2009 - 21:06:38 - перейти к сообщению
имеется такое содержимое
CODE (text):
скопировать код в буфер обмена
  1.  
  2. $str='
  3. <div id="some_div">
  4. <p><p> текст текст текст текст текст текст текст текст
  5. текст текст текст текст текст текст текст текст текст текст
  6. текст текст текст текст текст текст текст текст текст текст
  7. текст текст текст текст текст текст текст текст
  8. <p><p>
  9. </div>';

нужно вырезать текст между, два раза повторяющимися, тегами. Делаю так
CODE (text):
скопировать код в буфер обмена
  1.  
  2. preg_match_all( '|<p><p>(.*)<p><p>|sUS', $str, $matchesArr);

но вырезает вместе с парными тегами <p><p>. Что нужно изменить чтобы выдирал только текст между <p><p>?
2. koras - 12 Октября, 2009 - 22:01:02 - перейти к сообщению
http://www[dot]pcre[dot]ru/examples/tags/text/22/
3. will123 - 13 Октября, 2009 - 13:02:12 - перейти к сообщению
Все равно вырезает вместе с тегами
4. Champion - 13 Октября, 2009 - 13:17:15 - перейти к сообщению
Прочитай повнимательнее документацию и увидишь там, что в массив $matchesArr попадают:
-Совпадение с шаблоном целиком (нулевой элемент)
-Совпадения, соответствующие скобкам (следующие элементы)

 

Powered by ExBB FM 1.0 RC1