[英]What is the fastest way to remove html tags from a document in java?
我有一堆Web文档,想从中删除html标签。 我在StackOverflow上看到了一些有关如何在Java中执行操作的帖子,从正则表达式到HtmlCleaner和Jsoup都是如此。
我对寻找最快的方法感兴趣。 我有数百万个文档,因此对于我而言,性能至关重要。 我什至可以用一点质量来换取性能。
感谢您提前提出任何答案。
我的观点是尽可能多地使用流/ SAX处理:1)因为它使用较少的内存2)速度较快3)并行化更容易(内存消耗低的后果)
您拥有数百万个文档的用例需要这些因素(根据我的观点)。 请看那里Wikipedia SAX
因此,如果您的HTML是严格的或XHTML。 使用XSLT,这是有关如何使用SAX XSLT + SAX + Java转换XML(XHTML)的教程。
最后,如果您没有XML有效的HTML,请查看以下Java:替换使用流(和PushBackReader)的流,数组,文件等中的字符串 。
HTH
1)如果html是正确的xml,则可以创建其文档对象并删除该节点。
2)如果不是正确的xml,则将整个html读取为字符串&并使用replace函数删除“ html” sunbstring。
如果HTMl不是正确的xml,则regex是替换字符串的最快方法。
似乎Java regexp是最快的解决方案。 但是,它降低了之后获得的文本的质量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.