【发布时间】:2013-10-19 10:39:35
【问题描述】:
我想使用 php 来计算我的 html 代码中的每个 li 标签,这样我就可以知道是否缺少结束标签 (if the count of opening tags != the count of closing tags)
是否可以使用 php 正则表达式?
这是我的第一个 html 代码:
<ul>
<li>Coffee</li>
<li>Tea <!-- closing tag is missing -->
<li>Milk</li>
<li>Orange</li>
</ul>
那么if the count of opening tags == the count of closing tags呢,但是表单本身有错误:
<ul>
<li>Coffee</li>
</li> <!-- opening tag is missing -->
<li>Milk</li>
<li>Orange</li>
<li>Tea <!-- closing tag is missing -->
</ul>
最后,除了这种思考如何解决问题的方式之外,还有没有更有效的方式使用 php 来完成这项任务
【问题讨论】:
-
前面说了很多次,我认为你不应该用正则表达式解析html。
-
如果您想诊断可能无效的 HTML,也许 Tidy 可以帮助您:php.net/manual/en/tidy.diagnose.php
-
@KaarelKont-Kontson 这就是我提到的原因:注意:最后,.....
-
恕我直言:这不是无效的 html.. 它只是不符合 xhtml 格式
-
你为什么不把它解析为xml并检查验证呢?使用 XMLReader? html 是 xml 结构。我不是 php 程序员,你可以看到这个例子并对其进行测试:example