我有一个格式错误的 XML(来自供应商,没有实际的修复方法)。使用外籍人士 2.2.9 (gcc 9)
我希望用层次结构做我自己的标签堆栈,并在更重要的标签关闭后强制关闭不太重要的标签。例如,考虑这个 html:
<p><b>text</p>
有<p>优先权<b>,一旦看到</p>我也想默默地关闭<b>。
但是使用标准示例 outline.c ( https://github.com/libexpat/libexpat/blob/master/expat/examples/outline.c ) 我看到 expat 自己进行标签匹配。
$ ./outline < malformed.html
p
b
Parse error at line 1:
mismatched tag
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
$
所以我的问题是:如何告诉外籍人士,我自己会进行标签匹配,并且 XML_Parse() 不应该因为此类错误而停止?
或者是否有另一个可以处理这种格式错误的 XML 的 C 库?