如何将这个结构不良的HTML转换为格式良好的XHTML?

时间:2012-04-16 22:00:45

标签: html parsing jsoup

我正在使用JSoup 1.6.2。我有这个HTML ...

 <a title="Subscribe to RSS feeds" href="http://domain/city/RSS" style="float:right; margin-left:10px;""> 

注意标签结尾前的杂散报价。我希望JSoup能以某种方式清理它。我试着通过运行来使一切正常......

final org.jsoup.nodes.Document doc = Jsoup.parse(html);

结果是

  <a title="Subscribe to RSS feeds" href="http://domain/city/RSS" style="float:right; margin-left:10px;" "="">

仍然没有良好的形式。有没有办法可以采用格式错误的HTMl并使其与JSoup结合良好?除此之外,还有另一个HTML tidy-upper可以完成上述示例的工作,但是还允许我以String或org.w3c.dom.Document对象的形式访问生成的HTML吗?

2 个答案:

答案 0 :(得分:0)

你能使用正则表达式替换来解决这个问题吗?我不确定如何在Java中实现它,但在JavaScript中它将是这样的:

var str = '<a title="Subscribe to RSS feeds" href="http://domain/city/RSS" style="float:right; margin-left:10px;"">';

var newStr = str.replace(/""/,'"');
//<a title="Subscribe to RSS feeds" href="http://domain/city/RSS" style="float:right; margin-left:10px;">

答案 1 :(得分:0)

基于this回答,我建议您使用JTidy来“整理”HTML源代码。