什么是PCRE兼容语法?并且与C#PCRE兼容

本文关键字:C#PCRE 兼容 语法 PCRE 什么 | 更新日期: 2023-09-27 18:27:21

PCRE兼容的语法是什么?C#PCRE兼容吗?从维基百科我发现了这个:

Perl兼容正则表达式(PCRE)是一个正则表达式C受Perl中正则表达式功能启发的库编程语言,由Philip Hazel编写,从夏天开始PCRE的语法比POSIX正则表达式风格和许多经典的正则表达式风格都要强大和灵活得多表达式库。这个名称具有误导性,因为PCRE和Perl每个都具有彼此不共享的能力。

什么是PCRE兼容语法?并且与C#PCRE兼容

C#正则表达式与PCRE正则表达式共享一些语法。大多数功能重叠,但两个库都有自己的特点:

几个例子:

PCRE

  • 支持递归
  • 支持回溯控制谓词
  • 支持类似(?(DEFINE) ... )的构造
  • 支持更多选项
  • 提供DFA解析模式
  • 支持部分匹配
  • 支持'K
  • 支持X++简写语法(相当于(?>X+)

.NET

  • 支持捕获堆栈和重复命名组
  • 支持平衡组
  • 支持可变长度的查找

这份清单并不详尽。您可以在此页面和同级页面上比较两种口味。

考虑到这些差异,我希望能够使用.NET中的PCRE正则表达式,并且最近启动了PCRE.NET,这是一个包装器项目。它还没有完成,但开始可以使用了。