РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
438 of 723 menu

Свойство groupCount

Свойство groupCount класса Match возвращает количество групп захвата в регулярном выражении, которое было сопоставлено с частью строки. Свойство доступно только для чтения и возвращает целое число. Если регулярное выражение не содержит групп захвата, свойство вернёт 0. Группы захвата нумеруются начиная с 1, поэтому количество групп определяет максимально возможный номер группы.

Синтаксис

match.groupCount

Пример

Давайте получим количество групп захвата для регулярного выражения с двумя группами:

void main() { RegExp regExp = RegExp(r'(\d+)-(\d+)'); Match? match = regExp.firstMatch('123-456'); if (match != null) { print(match.groupCount); } }

Результат выполнения кода:

2

Пример

Давайте проверим, что вернёт свойство для регулярного выражения без групп захвата:

void main() { RegExp regExp = RegExp(r'\d+'); Match? match = regExp.firstMatch('12345'); if (match != null) { print(match.groupCount); } }

Результат выполнения кода:

0

Пример

Давайте используем groupCount для перебора всех групп захвата в цикле:

void main() { RegExp regExp = RegExp(r'(\w+)-(\w+)-(\w+)'); Match? match = regExp.firstMatch('abcde-12345-xyz'); if (match != null) { for (int i = 1; i <= match.groupCount; i++) { print(match.group(i)); } } }

Результат выполнения кода:

"abcde" "12345" "xyz"

Смотрите также

  • класс Match,
    который представляет результат сопоставления
  • метод group,
    который возвращает группу по её номеру
  • метод groups,
    который возвращает список всех групп
  • свойство pattern,
    которое возвращает исходное регулярное выражение
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить