我将html文本存储在数据库的其中一列中。列名是mailbody,表名是inbox_master。
列mailbody
的某些单元格具有如下所示的div
<div id="uid-g-uid" style="">2802</div>
或
<div id="uid-g-uid">
<p class="MsoNormal">6894</p>
</div>
或
<div id="uid-g-uid" style="display:none;">
6894</div>
这里常见的是一个id为“uid-g-uid”的div。我希望能够阅读这个div的html。我知道这可以使用正则表达式完成,但不知道该怎么做。
以下是我尝试但正常工作的正则表达式
/(?<=\<div\ id\=\"uid\-g\-uid\").*?(?=\<\/div\>)/gim
答案 0 :(得分:4)
感谢@sikfire和@dave,我得到了使用DOM的解决方案。以下是我帮助我的工作
$doc = new DOMDocument();
@$doc->loadHTML('The HTML Content Goes here');
$d = $doc->getElementById('uid-g-uid');
echo 'Value is ' . $d['textContent'];
不知道这可能就是这么简单!谢谢伙计们!
答案 1 :(得分:1)
你也可以在这里查看项目。 PHP DomParser
这可能会有所帮助!