PHP以字符串形式获取所有未关闭的HTML标记

时间:2010-09-29 13:43:02

标签: php html tags complete

我怎样才能获得给定字符串中所有未闭合的标签,最好按照它们应该关闭的顺序?

注意:请注意HTML中没有错误,并且它只是在X字符后被切断。不,这不是坏的HTML或重叠标签等的情况。也没有结束

实施例: <p><span>Lorem</span><b>ipsum ---返回---&gt; </b></p>
- 或 -
<ul><li>1</li><li>2 ---返回---&gt; </li></ul>

因此,如果字符串与函数输出连接,它将重新创建一个有效的HTML。

我不确定RegExp是否能在这里做到这一点,基本上我想得到介于&lt;之间的任何东西。和&gt;没有匹配的&lt; /&gt;关闭标签。

谢谢。

1 个答案:

答案 0 :(得分:3)

这不是一件容易的事。您可能需要查看Tidy

  

Tidy是Tidy HTML的绑定   清洁和修复实用程序,允许   你不仅要清洁,否则   操纵HTML文档,但也   遍历文档树。

http://php.net/manual/en/book.tidy.php