Функция filter
Функция filter применяется к строкам и выполняет
фильтрацию символов по заданному условию. Она принимает
предикат - лямбда-функцию, которая определяет, должен ли
символ быть включен в результирующую строку. Возвращает
новую строку, содержащую только те символы, которые
удовлетворяют условию предиката.
Синтаксис
inline fun String.filter(
predicate: (Char) -> Boolean
): String
Пример
Отфильтруем только цифры из строки:
val text = "a1b2c3d4e5"
val res = text.filter { it.isDigit() }
println(res)
Результат выполнения кода:
String "12345"
Пример
Отфильтруем только буквы из строки:
val text = "a1b2c3d4e5"
val res = text.filter { it.isLetter() }
println(res)
Результат выполнения кода:
String "abcde"
Пример
Отфильтруем только строчные буквы из строки:
val text = "AbCdEfG"
val res = text.filter { it.isLowerCase() }
println(res)
Результат выполнения кода:
String "bdf"
Пример
Отфильтруем только определенные символы с помощью условия:
val text = "abcde12345"
val res = text.filter { it == 'a' || it == '3' || it == '5' }
println(res)
Результат выполнения кода:
String "a35"
Пример
Удалим все пробелы из строки:
val text = "a b c d e"
val res = text.filter { !it.isWhitespace() }
println(res)
Результат выполнения кода:
String "abcde"