计算 Java 正则表达式中的组数


可以通过将多个字符组合成组对其进行捕获,将多个字符视为一个单独的单元。只需将这些字符放在一对括号中即可。

可以使用 Matcher 类的 groupCount() 方法计算当前匹配中的组数。此方法计算当前匹配中捕获的组数并返回该值。

示例

 Live Demo

import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Test {
   public static void main(String[] args) {
      String str1 = "<p>This <b>is</b> an <b>example</b> HTML <b>script</b> where <b>ever</b> alternative <b>word</b> is <b>bold</b></p>.";
      //Regular expression to match contents of the bold tags
      String regex = "(t(\S+)t)(\s)";
      String str = "the words tit tat tweet tostff tact that tilt text. start and end with the letter       t    ";
      //Creating a pattern object
      Pattern pattern = Pattern.compile(regex);
      //Matching the compiled pattern in the String
      Matcher matcher = pattern.matcher(str);
      while (matcher.find()) {
         System.out.println(matcher.group(0));
      }
      System.out.println("Total capturing groups: "+matcher.groupCount());
   }
}

输出

tit
tat
tweet
tact
that
tilt
text
tart
Total capturing groups: 3

更新于: 13-Jan-2020

996 浏览量

开启你的 职业生涯

通过完成课程获得认证

开始
广告