Ana*_*nth 3 .net c# regex memory-leaks
最近我的经理建议我不要太依赖Regex,因为它有很多缺点.当我试图了解更多信息时,我听说它有像正则表达式这样的问题会导致内存泄漏,因为有些对象在使用后仍继续挂在字符串引用上?
所以说reg-ex会导致内存开销并且如果你有其他选择则不应该使用它是正确的吗?是否有其他不利于注册(除了它很难学习:))
PS我正在开发一个类似于网络爬虫的应用程序(c#.net),它提取所有href和一些其他信息,如标题,元标记等.我可以选择使用HTML Agility包而不是reg-ex.
使代码难以阅读.大多数情况下,即使以更冗长的代码为代价,最好不要使用正则表达式.代价高昂的性能影响以及代码可读性的降低意味着在大多数情况下不使用正则表达式,尤其是简单的和复杂的情况.
而且为了你提到的目的(解析HTML等),简单的正则表达式无法完成工作(因为HTML不是常规语言).这就好像有一把锤子,一切看起来像钉子.