有人在C#应用程序中使用过RE2吗?

时间:2011-01-03 16:38:52

标签: c# regex dfa nfa

我开始搜索一个体面的正则表达式引擎。它让我进入了这个页面Benchmark of Regex Libraries。我决定使用RE2,因为它似乎是此列表中最好的FSA引擎。

我的最终应用程序将使用C#中的WPF构建。正则表达式库将在批处理模式下使用更多。然而,大多数其他业务逻辑将使用C#编写,因此我计划通过C#使用RE2库。

如果有人做了类似的事情,或者只是使用了RE2到C#,并且有一些建议或指示,请告诉我。

感谢。

2 个答案:

答案 0 :(得分:1)

是的,我和Daniel在这一次。 。 。在我从Reg Exp的一些流氓实施中寻找之前。 。 。我确保我正在预编译正则表达式,我可以,贪婪的选项等都设置正确,并且reg表达式本身在某种程度上不是“哑”。 。

我怀疑更换标准包不是最佳解决方案。当然,如果不了解您的要求,很难确定。 。 。但如果RegExp包的影响对你的表现影响很大,我首先会看看RegExp本身。

答案 1 :(得分:1)

我在一个应用程序中使用过RE2 .Net,让我告诉你这是最好的正则表达式过滤工具。在大多数情况下,它给我的性能提高了10倍以上。

您可以在此下载C ++中的源代码和.net库, https://github.com/0xcb/Re2.Net

但这取决于你的要求。如果你有一个文本文件,如果需要使用正则表达式列表过滤文件,那么我会推荐GREP。 如果您尝试使用大量正则表达式来过滤大型数据集,其中性能是一个问题,那么您可以使用RE2。但是,请注意https://code.google.com/p/re2/wiki/Syntax中列出的语法限制。