科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道正则表达式学习:组的定义及引用方式

正则表达式学习:组的定义及引用方式

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

一个正则表达式匹配结果可以分成多个部分,这就是组(Group). 把一次Match结果用(?)的方式分成组

作者:中国IT实验室 来源:中国IT实验室 2007年9月7日

关键字:

  • 评论
  • 分享微博
  • 分享邮件
    一个正则表达式匹配结果可以分成多个部分,这就是组(Group).
  把一次Match结果用(?<name>)的方式分成组,例子:
  public static void Main()
   {
    string s = "2005-2-21";
    Regex reg = new Regex(@"(?<y>\d{4})-(?<m>\d{1,2})-(?<d>\d{1,2})",RegexOptions.Compiled);
    Match match = reg.Match(s);
    int year = int.Parse(match.Groups["y"].Value);
    int month = int.Parse(match.Groups["m"].Value);
    int day = int .Parse(match.Groups["d"].Value);
    DateTime time = new DateTime(year,month,day);
    Console.WriteLine(time);
    Console.ReadLine();
   }
  也可以根据正则里面()的顺序,使用编码访问组.第一个括号对包涵的组被自动编号为1,后面的括号依次编号为2、3……
  访问方式:match.Groups[1].Value
  
  另外也可以用(?<数字>)的方式手工给每个括号对的组编号
  
  苦闷的是如果过一段时间不使用正则的话,里面的符号很容易就忘记了,:-)
  
  http://www.cnblogs.com/waitu/archive/2006/08/31/491192.html

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
      邮件订阅

      如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

      重磅专题
      往期文章
      最新文章