是的,Java的matches方法支持分组。当使用正则表达式进行匹配时,可以使用括号来将匹配的部分分组,然后在匹配结果中获取这些分组的内容。例如:
String input = "Hello, world!";
Pattern pattern = Pattern.compile("(Hello), (world)!");
Matcher matcher = pattern.matcher(input);
if (matcher.matches()) {
String greeting = matcher.group(1);
String target = matcher.group(2);
System.out.println("Greeting: " + greeting);
System.out.println("Target: " + target);
}
在上面的例子中,正则表达式"(Hello), (world)!"将"Hello"和"world"分别分组,然后通过matcher.group方法可以获取到这两个分组的内容。