你知道java的任何不严格的xpath吗? (我希望它不检查dtd和架构)如果它不关心正确的xml会很酷。
答案 0 :(得分:1)
您不需要将有效的XML架构为使用XPath。对于格式不正确的XML,我认为您有两种选择:
答案 1 :(得分:0)
好的,首先,“正确的xml”可以用两种方式解释。如果你的意思是“非格式”(缺少尖括号,重叠元素等),那么xpath的任何版本都不会对它有用。使用某种正则表达式会更好。如果您的XML格式不正确,我希望您能够了解它的格式是否合理,否则您无法随心所欲地使用它。
如果您实际上意味着“无效”,这仅仅意味着它不对模式或DTD进行验证,那么您可以使用与“local-name()”函数进行比较的谓词。例如,如果要查找“/ foo / bar”元素,忽略模式,那么您的xpath将如下所示:
/*[local-name()='foo']/*[local-name()='bar']