Метод groupCount
Метод groupCount класса Matcher возвращает
количество групп захвата в регулярном выражении,
с которым связан данный объект Matcher.
Метод не принимает параметров. Возвращаемое значение
имеет тип int. Если в регулярном выражении
нет ни одной группы захвата, метод вернёт 0.
Группой захвата считается часть шаблона, заключённая
в круглые скобки.
Синтаксис
matcher.groupCount()
Пример
Давайте создадим шаблон с тремя группами захвата и узнаем их количество:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main
{
public static void main(String[] args)
{
Pattern pattern = Pattern.compile("(a)(b)(c)");
Matcher matcher = pattern.matcher("abc");
System.out.println(matcher.groupCount());
}
}
Результат выполнения кода:
3
Пример
Давайте создадим шаблон с вложенными группами и посмотрим, как метод посчитает их количество:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main
{
public static void main(String[] args)
{
Pattern pattern = Pattern.compile("((a)(b))(c)");
Matcher matcher = pattern.matcher("abc");
System.out.println(matcher.groupCount());
}
}
Результат выполнения кода:
4
Пример
Давайте создадим шаблон без групп захвата и проверим результат:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main
{
public static void main(String[] args)
{
Pattern pattern = Pattern.compile("abc");
Matcher matcher = pattern.matcher("abc");
System.out.println(matcher.groupCount());
}
}
Результат выполнения кода:
0