【问题标题】:Regular Expression to check String is valid XHTML or not [duplicate]正则表达式检查字符串是否是有效的 XHTML [重复]
【发布时间】:2023-12-30 07:55:02
【问题描述】:

可能重复:
regular expression to check if string is valid XML

我正在寻找正则表达式来检查字符串是否是有效的 XHTML

例子

<h2>Legal HTML Entity References</h2><table align="center" border="0" ><tr></tr></table>

【问题讨论】:

标签: java xhtml


【解决方案1】:

这听起来是个坏主意:有效 XHTML 字符串的语言是不规则的

改用 HTML 解析库。几个例子:


相关问题:

【讨论】:

    【解决方案2】:

    Regex 是完全错误的工具。

    HTML 不是正则语言,因此不能被正则表达式解析。

    在此处查看 Jeff 关于该主题的帖子: http://www.codinghorror.com/blog/2009/11/parsing-html-the-cthulhu-way.html

    由于您已标记此帖子 Java,您应该考虑使用无数可用的 HTML 解析库之一。

    【讨论】:

      【解决方案3】:

      看看为什么使用正则表达式解析 HTML 不能可靠地工作:RegEx match open tags except XHTML self-contained tags

      XHTML 只是 HTML 的另一种风格/超集,因此您最好使用真正的验证器,例如 JTidy 等。

      【讨论】:

        【解决方案4】:

        尝试用解析器检查它。不要这样做Cthulhu Way

        您可以在这里找到一个策略点和一些示例:The Java XML Validation API

        【讨论】: