НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
542 of 1310 menu

Свойство groupValues

Свойство groupValues возвращает список строк, соответствующих группам захвата в результате сопоставления с регулярным выражением. Нулевой элемент списка содержит полное совпадение, а последующие элементы - содержимое захваченных групп.

Синтаксис

val groupValues: List<String>

Пример

Найдем группы в строке "John Doe, age 30" с помощью регулярного выражения:

val regex = Regex("(\\w+) (\\w+), age (\\d+)") val matchResult = regex.find("John Doe, age 30") val groups = matchResult?.groupValues if (groups != null) { for (group in groups) { println(group) } }

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

String "John Doe, age 30" String "John" String "Doe" String "30"

Пример

Использование groupValues с именованными группами:

val regex = Regex("(?<first>\\w+) (?<last>\\w+), age (?<age>\\d+)") val matchResult = regex.find("Alice Smith, age 25") val groups = matchResult?.groupValues if (groups != null) { println(groups["first"]) println(groups["last"]) println(groups["age"]) }

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

String "Alice" String "Smith" Int 25

Пример

Проверка наличия групп перед обращением к ним:

val regex = Regex("(\\d{3})-(\\d{2})") val input = "123-45" val matchResult = regex.find(input) if (matchResult != null && matchResult.groupValues.size >= 3) { println("Area code: ${matchResult.groupValues[1]}") println("Group code: ${matchResult.groupValues[2]}") } else { println("No match or not enough groups") }

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

String "Area code: 123" String "Group code: 45"

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

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