我正在寻找一个基于Java的html解析器,它可以搜索和替换保留html标签的文本。之前已经在这里提出过这个问题,但答案似乎没有达到目标。我下载的html解析器很少,并且编写了简单的程序来查看它们是否可以完成这项工作。这些包括jsoup,Jericho,Java HTML解析器等。这些可以进行搜索,但是在替换保留html标签的文本时,没有办法做到这一点。
我已阅读这些帖子的完整帖子:
How to find/replace text in html while preserving html tags/structure
html search and replace on server side
如果今天不存在这样的解析器,那么实现一个解析器的最佳方法是什么?如果您已经做过类似的事情,可以共享代码吗?
答案 0 :(得分:1)
Caja解析器使用libhtmlparser,这是一个HTML5解析器,可以很好地处理包含生成org.w3c.dom.DocumentFragment
的嵌入式XML子树的标记汤,并且具有生成格式良好的HTML的渲染器。
渲染器代码位于http://code.google.com/p/google-caja/source/browse/trunk/src/com/google/caja/parser/html/Nodes.java
答案 1 :(得分:0)
杰里科解析器可能会帮助你。已经永远存在并且使用格式错误的HTML。 http://jericho.htmlparser.net/docs/index.html