在Java中,使用正则表达式进行分组捕获时,需要使用Pattern
和Matcher
类。分组捕获是通过在正则表达式中使用圆括号()
来实现的。圆括号内的内容将被捕获为一个分组,可以在后续的处理中引用这个分组。
以下是一个简单的示例,说明如何使用分组捕获:
import java.util.regex.Pattern; import java.util.regex.Matcher; public class GroupCaptureExample { public static void main(String[] args) { String input = "The quick brown fox jumps over the lazy dog"; String regex = "(\\w+)\\s+(\\w+)\\s+(\\w+)\\s+(\\w+)"; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(input); if (matcher.find()) { for (int i = 1; i <= matcher.groupCount(); i++) { System.out.println("Group " + i + ": " + matcher.group(i)); } } } }
在这个示例中,我们使用了以下正则表达式:
(\\w+)\\s+(\\w+)\\s+(\\w+)\\s+(\\w+)
这个正则表达式包含4个分组,每个分组都是一个或多个字母数字字符(\w+
),后面跟着一个或多个空白字符(\s+
)。
运行这个程序,你将看到以下输出:
Group 1: The Group 2: quick Group 3: brown Group 4: fox
这表明分组捕获成功地将输入字符串中的单词分成了4个组。