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

Свойство groups

Свойство groups содержит группы захвата из результата сопоставления регулярного выражения. Применяется к объекту MatchResult. Возвращает объект MatchGroupCollection, содержащий все найденные группы. Нулевая группа содержит полное совпадение, последующие группы содержат совпадения по подвыражениям в круглых скобках.

Импорт

import kotlin.text.MatchResult import kotlin.text.MatchGroupCollection

Синтаксис

val MatchResult.groups: MatchGroupCollection

Пример

Найдем группы в строке по шаблону:

val regex = """(\w+)\s(\w+)""".toRegex() val matchResult = regex.find("John Smith") val groups = matchResult?.groups println("Full match: ${groups?.get(0)?.value}") println("First group: ${groups?.get(1)?.value}") println("Second group: ${groups?.get(2)?.value}")

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

Full match: John Smith First group: John Second group: Smith

Пример

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

val regex = """(\d+)-(\d+)""".toRegex() val matchResult = regex.find("123-456") val groups = matchResult?.groups println("First number: ${groups?.get(1)?.value}") println("Second number: ${groups?.get(2)?.value}")

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

First number: 123 Second number: 456

Пример

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

val regex = """(\d+)?""".toRegex() val matchResult = regex.find("abc") val groups = matchResult?.groups println("Group 1 exists: ${groups?.get(1) != null}")

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

Group 1 exists: false

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

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