Функция toRegex

Функция toRegex преобразует строку в объект типа Regex, который может использоваться для поиска совпадений с регулярным выражением. Может принимать параметры для настройки обработки регулярного выражения.

Синтаксис

kotlinfun String.toRegex(): Regex
kotlinfun String.toRegex(option: RegexOption): Regex
kotlinfun String.toRegex(options: Set<RegexOption>): Regex

Пример

Создадим простое регулярное выражение для поиска цифр:

kotlinval pattern = "\\d+".toRegex()
val input = "abc123def456"
val result = pattern.findAll(input).toList()
println(result)

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

kotlin[MatchGroup(value=123, range=3..5), MatchGroup(value=456, range=9..11)]

Пример

Использование флага RegexOption.IGNORE_CASE для регистронезависимого поиска:

kotlinval pattern = "hello".toRegex(RegexOption.IGNORE_CASE)
val input = "HELLO world"
val result = pattern.containsMatchIn(input)
println(result)

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

kotlintrue

Пример

Использование нескольких флагов одновременно:

kotlinval options = setOf(RegexOption.IGNORE_CASE, RegexOption.MULTILINE)
val pattern = "^start".toRegex(options)
val input = "START line1\nstart line2"
val result = pattern.findAll(input).count()
println(result)

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

kotlin2

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

  • функцию matches,
    которая проверяет полное совпадение строки с регулярным выражением
  • функцию containsMatchIn,
    которая проверяет наличие совпадения в строке
  • функцию find,
    которая находит первое совпадение с регулярным выражением
  • функцию replace,
    которая заменяет совпадения в строке