我刚刚阅读了这篇有趣的文章,它介绍了支持正则表达式的各种语言的实现细节。该文章描述了使用非确定有限自动机(NFAs)与确定有限自动机(DFAs)的正则表达式的替代实现。它声称,在某些特别“病态”的正则表达式上,回溯DFA实现(Perl、Java和其他版本使用的版本)容易出现非常慢的性能。(grep、awk和Tcl仍然使用DFAs,但在某种程度上速度呈指数级增长)
该文章没有提到.NET框架,但我想知道.NET(尤其是C#)正则表达式是如何实现的,并且在性能方面如何比较。
编辑:
我可以假设,由于答案者的文章提到.NET进行回溯,它将与Perl和Java相当吗?
该文章没有提到.NET框架,但我想知道.NET(尤其是C#)正则表达式是如何实现的,并且在性能方面如何比较。
编辑:
我可以假设,由于答案者的文章提到.NET进行回溯,它将与Perl和Java相当吗?