Необхомо найти все пока не встретится "</p>". Я много раз писал регулярки, например, искал все пока не встретится "}". С одним символом все понятно, а как быть если у меня слово ("</p>")? Неуверен что регулярки вообще это позволяют...
регулярки позволяют и очень легко, но тебе достаточно сделать следующее: $newStr = substr($oldStr, 0, strpos($oldStr, '</p>'));
Инструментами языка это просто, меня интересует именно регулярка, поскольку в базе будет хранится текст и регулярка, которая его обрабатывает. Нужна одна строка
PHP: <?php $str = 'some <p> text is </p> here'; preg_match ('#(.*?)</p>#', $str, $m); // $m[0] => some <p> text is </p> // $m[1] => some <p> text is ?>
Спасибо. Работает. Но есть еще одна проблема, такие регулярки по какой-то причине ничего не метчат если строка на которую должен заканчиваться текст местит пробел, например PHP: <? preg_match ('#(.*?)</p><div class="foo">#', $str, $m); ?>
Все. Всем спасибо, решил таким образом: PHP: <? preg_match ('/button.js"><\/script>\s+<\/div>(.*?)\s+<div class="sociable"/s', $str, $m); ?> то есть "s" в конце - решающий.
Elephant Смените или удалите, пожалуйста, аватару. Разрешены только личные фотографии. З.ы Вспомнилось — до первой звезды