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 |
相关推荐
wangzhaotongalex 2020-10-20
wyq 2020-11-11
TLROJE 2020-10-26
风雨断肠人 2020-10-13
duanqingfeng 2020-09-29
rechanel 2020-11-16
cshanzhizi 2020-10-16
luofuIT成长记录 2020-09-22
phphub 2020-09-10
taomengxing 2020-09-07
MaggieRose 2020-08-19
flyingssky 2020-08-18
山水沐光 2020-08-18
jyj00 2020-08-15
AHuqihua 2020-08-09
山水沐光 2020-08-03