一个正则表达式匹配结果可以分成多个部分,这就是组(Grupo).
把一次Match结果用(?<nombre>)的方式分成组,例子:
vacío estático público principal ()
{
cadena s = "2005-2-21";
Regex reg = new Regex(@"(?<y>d{4})-(?<m>d{1,2})-(?<d>d{1,2})",RegexOptions .Compilado);
Coincidencia de coincidencia = reg.Match(s);
int año = int.Parse(match.Groups["y"].Value);
int mes = int.Parse(match.Groups["m"].Value);
int día = int .Parse(match.Groups["d"].Value);
FechaHora hora = nueva FechaHora(año,mes,día);
Consola.WriteLine(hora);
Consola.ReadLine();
}
也可以根据正则里面()的顺序,使用编码访问组.第一个括号对包涵的组被自动编号为1,后面的括号依次编号为2、3……
访问方式:match.Groups[1].Value
另外也可以用(?<数字>)的方式手工给每个括号对的组编号
苦闷的是如果过一段时间不使用正则的话,里面的符号很容易就忘记了,:-)