[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: preg_match
preg_match
Привет, существует большой текст, в нем есть 1 тэг как мне вывести содержимое его
Пример:

$text = '<div class=c_tableborder>
<table class="c_shoutbox" width=100%>
<tr><td>
<li>Новый год 2013</li>
</td></tr>
</table>
</div>'
;
preg_match('~[<li>]+[-a-z0-9_]+(?:\\.[-a-z0-9_]+)*[</li>]+~i', $text, $matches);
$zz = $matches[0];
echo $zz;

как мне получить результат "Новый год 2013" подскажите пожалуйста, буду очень признателен
Zzepish
preg_match('/<li>(.*)<\/li>/i', $text, $matches);
preg_match
Цитата (Zzepish @ 28.12.2012 - 00:36)
preg_match('/<li>(.*)<\/li>/i', $text, $matches);

Большуйщее спасибо! 3 часа голову марал и так и сяк текст изменял не помогло, Вы помогли! спасибо, с наступающим
VolodinAS
А вообще - это устарело всё. Используйте simple html dom. Обошлиь бы без этих палочных заборов
Placido
1. Вы немного удивитесь результату работы этой суперрегулярки, когда в тексте будет несколько <li>...</li> или между ними будет присутствовать перевод строки.
2. "/" не придется экранировать, если в качестве разделителя использовать другой символ (например, "~" или "#").
Winston
Цитата (VolodinAS @ 27.12.2012 - 23:06)
А вообще - это устарело всё

Регулярки устарели? blink.gif
Zzepish
Placido
он первое совпадение находит и выводит его.
Чего тут удивятся?
Placido
Цитата (Zzepish @ 6.01.2013 - 01:17)
Placido
он первое совпадение находит и выводит его.
Чего тут удивятся?

Код для теста:
<li>
пункт 1
</li>
и

<li>пункт 2</li><li>пункт 3</li>
Можешь начинать удивляться.
Zzepish
Placido
Сейчас гляну (но я понял намек)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.