例如,我有一个带有命名组的正则表达式;
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
}