【发布时间】:2012-03-23 00:32:59
【问题描述】:
如何从具有类 pricebox 的元素内的 h3 标记之间的 HTML 获取内容?比如下面的字符串片段
<!-- snip a lot of other html content -->
<div class="pricebox">
<div class="misc_info">Some misc info</div>
<h3>599.99</h3>
</div>
<!-- snip a lot of other html content -->
catch is 599.99 必须是返回的第一个匹配项,即如果函数调用是
preg_match_all($regex,$string,$matches)
599.99 必须在 $matches[0][1] 中(因为我使用相同的脚本从具有不同 $regex 的不同外观字符串中获取数字 - 脚本查找第一个匹配项)。
【问题讨论】:
-
认真的吗?再次? Parsing HTML with regular expressions?
-
试试这个 dom 操作simplehtmldom.sourceforge.net php 也有一些很棒的 dom 操作支持。大多数优秀的程序员不建议将正则表达式用于 dom pars
-
嗯,你指出的答案听起来有点歇斯底里。 HTML 只是一个字符串,它并不神奇,我需要在子字符串 'class="pricebox"' 之后出现的第一对 h3 标记(同样只是字符串)之间进行匹配。
-
谢谢 Mian,这听起来很有用,但我需要一些独立于进行解析的实际 PHP 的东西 - 我将正则表达式粘贴到 CMS 中,脚本使用该正则表达式来获取数据。跨度>
标签: php html regex html-parsing