您的位置:首页 > 编程语言 > Java开发

java正则表达式捕获组

2015-08-10 14:40 561 查看
Java中使用正则表达式返回符合正则表达式的字符串就要用到group(),group中记录了所有符合指定表达式的字符串。本文通过一段代码讲解如何使用group()。
<span style="white-space:pre">	</span>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)); // 打印组1
System.out.println("m.group(2):" + m.group(2)); // 打印组2
System.out.println();
}
System.out.println("捕获个数:groupCount()=" + m.groupCount());
}


  输出:

  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

  "(\\d+,)(\\d+)"可以看成一个大组,上面的字符串 s 可以分为两个大组。里面的两个小括号分别代表一个大组里面的小组,即groupCount=2。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: