是的,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方法可以获取到这两个分组的内容。