java正则表达式之group()

在java中使用正则表达式返回符合正则表达式的字符串就要用到group(),group中记录了所有符合指定表达式的字符串,下面我通过一段代码讲解如何使用group

 public static void main(String[] args)
 {
 
   Pattern p = Pattern.compile("(//d+,)(//d+)");
         String s = "123,456-34,345";
         Matcher m = p.matcher(s);
        while(m.find())
        {
              System.out.println("m.group():"+m.group()); //打印所有
              
              System.out.println("m.group(1):"+m.group(1)); //打印数字的
              
              System.out.println("m.group(2):"+m.group(2)); //打印字母的
              System.out.println();
        } 
         
       System.out.println("捕获个数:groupCount()="+m.groupCount());
  }

首先创建Pattern对象,在其中编译要用到的表达式,接着使用matcher方法在字符串中匹配指定表达式,接下来,就要输出查找结果了,在调用m.group之前,一定要记着调用m.find,不然会产生编译错误,在正则表达式中,用括号括起来的算作一组,group(0)于group()等价,表示整个正则表达式的匹配字符串,group(1)等价于第一个括号内的表达式返回的字符串,以此类推。当while循环执行过一轮,第二轮就输出第二组匹配的字符串。上述程序的执行结果如下:

m.group():123,456
m.group(1):123,
m.group(2):456

m.group():34,345
m.group(1):34,
m.group(2):345

捕获个数:groupCount()=2

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值