我正在查看正则表达式以检查字符串是否为有效XHTML
例如
<h2>Legal HTML Entity References</h2><table align="center" border="0" ><tr></tr></table>
答案 0 :(得分:5)
这听起来不错:有效XHTML字符串的语言不常规。
改为使用HTML解析库。几个例子:
相关问题:
答案 1 :(得分:1)
正则表达式是完全错误的工具。
HTML不是常规语言,因此无法通过正则表达式进行解析。
请参阅Jeff关于此主题的帖子: http://www.codinghorror.com/blog/2009/11/parsing-html-the-cthulhu-way.html
由于您已经标记了这篇文章Java,因此您应该考虑使用众多可用的HTML解析库之一。
答案 2 :(得分:1)
看看为什么使用正则表达式解析HTML将无法可靠地运行:RegEx match open tags except XHTML self-contained tags
XHTML只是HTML的另一种风格/超集,所以你最好使用真正的验证器,比如JTidy等。
答案 3 :(得分:0)
尝试使用解析器进行检查。不要Cthulhu Way。
在这里,您可以找到一个标准点和一些如何操作的示例:The Java XML Validation API