最近,我的经理建议我不要过度依赖正则表达式,因为它有很多缺点。当我尝试了解更多信息时,我听说它存在诸如正则表达式之类的问题,因为某些对象即使在使用后仍会继续挂在字符串引用上,从而导致内存泄漏?
.NET RegEx“内存泄漏”调查 https://stackoverflow.com/questions/2734766/net-regex-memory-leak-investigation
所以说 reg-ex 会导致内存开销,如果您有其他选择,则不应使用 reg-ex ,这是正确的吗? reg-ex 还有其他缺点吗(除了它很难学:))
P.S 我正在开发一个类似于网络爬虫的应用程序(c#.net),它提取所有 href 和一些其他信息,如标题、元标记等。我可以选择使用 HTML Agility pack 而不是 reg-ex。
使代码难以阅读。大多数时候,即使以更冗长的代码为代价,您最好不要使用正则表达式。代价高昂的性能影响和代码可读性的下降意味着您在大多数情况下不使用正则表达式,尤其是简单的和复杂的情况。
出于您提到的目的(解析 HTML 等),简单的正则表达式无法完成工作(因为 HTML 不是常规语言)。这就像有一把锤子,而一切看起来都像钉子。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)