1
我试图解析其中一些有一些我认为是“非法”的特色解析破损的XML
- 多个根元素
- “匿名”关闭标签第三方XML
- 不匹配的开始和结束标签
例
- 包含注释<foo>
<toto>123</> <!-- == "anonymous" close tag -->
<tata>
<titi>456</>
</> <!-- == "anonymous" close tag-->
</foo>
<bar> <!-- == multiple root elements -->
</bar>
这是XML的一些变体,我还没有听说过?目前为止我发现的所有东西包括Well-formedness and error-handling都表明这不是XML。
标签名称区分大小写;开始标签和结束标签必须完全匹配。
单根元素包含所有其他元素。
我只是想知道什么最简单的方法来解析这个在Java中,而不必诉诸于正则表达式。我正在考虑初始分析来纠正XML,以便我可以使用XPath或其他标准机制。
乍一看,我会说,你将需要使用解析器来处理这个问题一般。最简单的解决方案可能是回到源代码并要求更清晰的XML数据。 –
我的建议,不要使用正则表达式。坏消息是,你可能需要根据你拥有的文档来找出并构建你自己的解析器,除非这个奇怪的习惯用法可用。 – Mena
匿名关闭标签是一个问题 - 你确定每个开始标签都只有一个标签吗?否则,没有办法解析这个。 – RealSkeptic