我想解析一个类似这样的html内容:
<div id="sometext">Lorem<br> <b>Ipsun</b></div><span>content</span><div id="block">lorem2</div>
我需要抓住第一个div中的“Lorem<br> <b>Ipsun</b>
”。我怎样才能做到这一点?
Ps:第一个div里面的html有 多行,这是一篇文章。
由于
答案 0 :(得分:4)
尝试use regex to parse HTML并不是一个非常好的体验,因为HTML不是常规语言。另一种方法是使用HTML解析器,如Simple HTML DOM或DOM库/
简单的HTML DOM示例:
$html = str_get_html('<div id="sometext">Lorem<br> <b>Ipsun</b></div><span>content</span><div id="block">lorem2</div>');
echo $html->find('div[id=sometext]', 0)->innertext;
答案 1 :(得分:0)
假设id
已知:
preg_match('#<div id="sometext">(.*?)</div>#s', $text, $match);