微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 如何在.NET中实现正则表达式?

我刚刚阅读了这篇关于支持正则表达式的各种语言的实现细节的 interesting article.

它描述了使用非确定性有限自动机(NFA)与确定性有限自动机(DFA)的正则表达式的替代实现.它声称反向跟踪DFA实现(Perl,Java和其他版本中使用的版本)在一些特别“病态”的正则表达式上容易受到非常慢的性能影响. (grep,awk和Tcl仍然使用DFA,但不知何故以指数方式加快)

它没有引用.NET框架,但我想知道如何实现.NET(特别是C#)正则表达式,以及它们在性能方面的比较.

编辑:

我可以假设,因为回答者的文章提到.NET确实回溯,它将与Perl和Java相提并论吗?

解决方法

有一篇非常棒的文章 here.他利用了这样一个事实:你可以介入.NET框架代码并查看它的功能,并解释一切是如何工作的.这是一个很好的阅读.

原文地址:https://www.jb51.cc/csharp/244108.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐