java下面这两种语言的区别是什么?
System.out.println(matcher.group(1));
System.out.println(matcher.group());
我想知道上面两种代码的区别是什么。我得到不同的输出。有人能详细解释一下吗
谢谢
你可以在下面搜索框中键入要查询的问题!
System.out.println(matcher.group(1));
System.out.println(matcher.group());
我想知道上面两种代码的区别是什么。我得到不同的输出。有人能详细解释一下吗
谢谢
# 1 楼答案
API doc是一个非常好的先看的地方
# 2 楼答案
对
group()
的调用将为您提供匹配的整个字符串,而group(1)
将为您提供第一个括号内的“捕获”组(或者更一般地说,group(n)
将为您提供第n个捕获组,从1开始计算左/右括号)例如,如果你有这样一个输入字符串:
您匹配了以下正则表达式(不带引号):
然后
group()
会给你“快”,而group(1)
会给你“快”有关这些正则表达式如何在Java中工作的更多详细信息,请参阅^{} JavaDoc
# 3 楼答案
我指给你看Matcher的JavaDocs
组():
组(int):