Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗ktSpRgMSeP 54 of 299 menu
◀ ▶

Карманы при поиске в Kotlin

Часто при поиске совпадения удобно разложить подстроку на так называемые карманы. Они представляют собой способ разбить найденное на отдельные части. Для их использования нужно заключить часть регулярки в круглые скобки.

Пусть у нас есть следующая строка:

val txt = "123 456"

Разложим подстроки с числами по карманам. Для этого напишем следующую регулярку:

val res = Regex("(\\d+) (\\d+)").find(txt)

В результате мы получим объект MatchResult. В его элементе с индексом 1 будет лежать первый карман, в элементе с индексом 2 - второй карман, а в элементе с индексом 0 - все найденное (так называемый нулевой карман):

println(res?.groupValues[0]) # '123 456' - найденное println(res?.groupValues[1]) # '123' - 1 карман println(res?.groupValues[2]) # '456' - 2 карман

Дана строка, содержащая домен:

val txt = "sss domain.ru zzz"

Найдите этот домен и положите его имя в первый карман, а зону - во второй.

Дана строка, содержащая дату:

val txt = "31.12.2025"

Положите день в первый карман, месяц - во второй, а год - в третий.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить