您可以在正则表达式中命名“完全匹配”组吗?

时间:2019-04-16 14:45:13

标签: c# regex naming

例如,我有一个带有命名组的正则表达式;

A=(?<A>.*),B=(?<B>.*),C=(?<_C>.*) regex101 example

对匹配组(在这种情况下为A,B和_C)进行迭代,以在文件上设置一些数据。但是,由于未使用_C,因此代码会跳过这一点,因为组名以_开头。

总有一个“完全匹配”组,其名称为0。实际上,未命名的匹配组将被赋予一个数字,这是未命名组的默认值。

我很好奇,是否可以给“完全匹配”起一个不同的名称,例如_Full_Match,这样上述逻辑仍然适用?否则,迭代所有组都包括我不希望的Group["0"]

//c# example with System.Linq to iterate groups
foreach (var x in regex.GetGroupNames()
             .Where(y => y != "0" && y.Substring(0, 1) != "_"))
{
        /// do something with x
}

0 个答案:

没有答案