Свойство options
Свойство options содержит значение типа RegexOption,
которое представляет собой набор флагов опций, установленных для
регулярного выражения. Эти опции влияют на поведение регулярного выражения.
Импорт
import kotlin.text.Regex
import kotlin.text.RegexOption
Синтаксис
val Regex.options: Set<RegexOption>
Доступные опции
RegexOption.IGNORE_CASE
RegexOption.MULTILINE
RegexOption.LITERAL
RegexOption.UNIX_LINES
RegexOption.COMMENTS
RegexOption.DOT_MATCHES_ALL
Пример
Создадим регулярное выражение с опцией игнорирования регистра и проверим его опции:
val regex = Regex("[a-z]+", RegexOption.IGNORE_CASE)
val res: Set<RegexOption> = regex.options
println(res)
Результат выполнения кода:
Set<RegexOption> [IGNORE_CASE]
Пример
Создадим регулярное выражение с несколькими опциями и проверим их:
val regex = Regex("^[a-z]+$", setOf(RegexOption.IGNORE_CASE, RegexOption.MULTILINE))
val res: Set<RegexOption> = regex.options
println(res.contains(RegexOption.IGNORE_CASE))
println(res.contains(RegexOption.MULTILINE))
println(res.contains(RegexOption.LITERAL))
Результат выполнения кода:
Boolean true
Boolean true
Boolean false
Пример
Проверим опции регулярного выражения, созданного без дополнительных опций:
val regex = Regex("[0-9]+")
val res: Set<RegexOption> = regex.options
println(res.isEmpty())
Результат выполнения кода:
Boolean true
Пример
Используем опции для case-insensitive поиска:
val regex = Regex("hello", RegexOption.IGNORE_CASE)
val input = "HELLO world"
val res: Boolean = regex.containsMatchIn(input)
println(res)
Результат выполнения кода:
Boolean true
Смотрите также
-
функцию
find,
для поиска первого совпадения с регулярным выражением -
функцию
findAll,
для поиска всех совпадений с регулярным выражением -
функцию
matchEntire,
для проверки полного соответствия строки регулярному выражению -
функцию
replace,
которая заменяет совпадения в строке