繁体   English   中英

从Java文档中删除html标记的最快方法是什么?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM