c#.net4 - 正则表达式vs html敏捷包

c# html-agility-pack memory regex

什么更快?我刚刚制作了一个使用HTML Agility Pack的网络刮刀,它耗费了大量的内存。

使用内存分析器对其进行分析,我发现HTMLDocument,HTMLNode等实例占用了大量内存。

我觉得使用正则表达式会更快更高效,我错了吗?

一般承认的答案

一个reg-ex将比html agilty pack快得多。

但你应该记住,html不一定总能很好地形成。仅使用reg-ex搜索所需的正确数据可能会失败。浏览者对错误非常宽容。

敏捷包是一个很好的工具。它为正在消耗的内存提供了许多功能。


热门答案

根据你到底做了什么,它确实可以加快速度,并使用正则表达式释放一些内存。问题是 - 您从中提取数据的页面是多么严格和格式良好。正则表达式更容易被您在野外遇到的完全有效但意外的HTML结构所混淆。



Related

许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow