Skip to content

分组匹配是指将正则表达式中的一部分内容放在括号内,形成一个子表达式。这样可以对该子表达式进行独立的操作,如重复、引用或作为选择项。

例如,假设我们有一个字符串 apple, banana, cherry,我们想要提取其中的水果名称。我们可以使用分组匹配来实现:

正则表达式(\w+),\s+(\w+),\s+(\w+)

解释:

  • (\w+):表示一个或多个字母数字字符,即一个单词。
  • ,\s+:表示逗号后面可能有一个或多个空格。

每个分组(\w+)之间的\s+表示它们之间可能有一个或多个空格。

通过这个正则表达式,我们可以匹配并提取出三个水果名称:applebananacherry

你也可以使用分组匹配来捕获特定的文本片段,并在后续操作中引用它们。例如,你可以使用反向引用来查找重复的单词:

正则表达式\b(\w+)\b\s+\1\b

解释:

  • \b:表示单词边界。
  • (\w+):表示一个或多个字母数字字符,即一个单词。
  • \s+:表示一个或多个空格。
  • \1:表示对第一个分组(即(\w+))的引用。

通过这个正则表达式,我们可以匹配并提取出重复的单词。分组匹配在正则表达式中非常有用,它允许你对子表达式进行逻辑分组、捕获和引用。