Функция split
Функция split
с параметром типа Regex
позволяет разбивать строку на части по шаблону регулярного выражения.
Это мощный инструмент для сложного разделения текста по нескольким разделителям или паттернам.
Синтаксис
fun CharSequence.split(
regex: Regex,
limit: Int = 0
): List<String>
fun String.split(
regex: Regex,
limit: Int = 0
): List<String>
Пример
Разделение строки по нескольким разделителям с помощью Regex:
val text = "apple,bananacherry orange"
val result = text.split(Regex("[,\\s]"))
println(result)
Результат выполнения кода:
[apple, banana, cherry, orange]
Пример
Разделение строки по цифрам с использованием регулярного выражения:
val text = "one1two2three3four"
val result = text.split(Regex("\\d+"))
println(result)
Результат выполнения кода:
[one, two, three, four]
Пример
Разделение строки с ограничением количества частей:
val text = "a,b,c,d,e,f,g"
val result = text.split(Regex(","), limit = 4)
println(result)
Результат выполнения кода:
[a, b, c, d,e,f,g]
Пример
Разделение строки по сложному паттерну (пробелы и знаки препинания):
val text = "Hello, world! How are you? I'm fine."
val result = text.split(Regex("[\\s,!?.]+"))
println(result)
Результат выполнения кода:
[Hello, world, How, are, you, I, m, fine]
Пример
Разделение строки по шаблону даты для извлечения компонентов:
val text = "2023-12-25_2024-01-01_2024-05-15"
val result = text.split(Regex("_|-"))
println(result)
Результат выполнения кода:
[2023, 12, 25, 2024, 01, 01, 2024, 05, 15]