【发布时间】:2011-06-10 15:20:15
【问题描述】:
用户将提供 HTML,它可能是有效的或无效的(格式错误)。我需要能够确定以下内容:
- 正文中是否有样式标签
- 是否存在具有使用宽度或背景图像的样式属性的 div。
我尝试过使用 DOMDocument 类,但它只能用 xPath 做 1 而不能做 2。
我也试过simple_html_dom,只能做1,不能做2。
你认为我只使用正则表达式是个好主意还是有什么我没有想到的?
【问题讨论】:
-
他们都可以做 2,但需要注意的是您必须自己解析
style属性。 那部分你可以使用正则表达式。 -
格式有多畸形?有 HTML 解析器,独立于 XML 解析器,它们倾向于解决不允许使用 XML 解析器解析 HTML 的问题。
-
@Abs:因为正则表达式单行
style属性与正则表达式 HTML 文档完全不同。您不妨问我,“如果我可以正则表达式style属性,为什么我不能正则表达式巨型河马?”这是完全不合逻辑的。 -
此 XPath 不能用于第二个选项:
//div[contains(@style,'width:') or contains(@style,'background-image:')?