解析HTML并破坏HTML文本中的行

时间:2015-10-28 19:26:18

标签: java

我有很多Java代码在服务器端添加一些HTML片段。 HTML复杂性可能是多种多样的,但是它内部会有一些必须根据指定的行长度打破的文本。

所以论证是整个HTML框架:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

我必须例如将<div class="container"> <div id="header"> <br class="cbt"> <div id="hlogo"> <a href="/" > Stack Overflow </a> 分解为

Stack Overflow

因为它超过了行长限制,这将是9个字符。

我怎么能这样做? Meybe有一些库可以将这个HTML片段解析为某个文档对象然后我可以打破这些行,但是如果文本与HTML混合了怎么办?

1 个答案:

答案 0 :(得分:0)

是的,您可以使用JSOUP Library使用html内容解析整个String。此库会将您的所有 HTML节点转换为 HTML对象,而不是可以迭代此对象以查找长度为&gt;的此文本。 9打破这种插入例如。

示例:

String html = "<html><head><title>First parse</title></head>"
  + "<body><p>Parsed HTML into a doc.</p></body></html>";
Document doc = Jsoup.parse(html);

文档对象由Elements和TextNodes组成,TextNode正是您所寻找的。

您可以在http://jsoup.org/cookbook/introduction/parsing-a-document

中找到一些优秀的例子

希望它有所帮助。