使用HTMLCleaner解析带有Java的HTML;我怎么能识别“<”属性中的char?

时间:2013-08-14 14:17:09

标签: java html html-parsing htmlcleaner

我正在解析一些非常糟糕的HTML代码。我已经取得了很大的成功,直到我注意到有些元素,属性包含“<”。

例如:

<a href="#Anchor-<ht-42368">40</a>

将导致

<a href="#Anchor-">
    <ht-42368>40</ht-42368>
</a>

这将在浏览器中呈现,但HTML清洁工会认为它正在尝试启动新标记。它添加了一个'“&gt;”在开始一个我不想要的新标签之前。

解决此问题的最佳方法是什么?我不确定HTMLCleaner是否有任何我可以配置来管理它的属性..如果没有,我应该如何预处理HTML数据来修复这些字符?

编辑:修复示例

编辑:我想我可以在进入htmlcleaner之前将一个replaceAll()与正则表达式一起应用。也许像=“[^”] *“之类的东西,并搜索它是否包含”&lt;“..如果确实如此,请使用转义的html&符号进行搜索。这会有用吗?

0 个答案:

没有答案