Преобразование строки в верхний регистр

Kotlin:
Преобразование строки в верхний регистр

Как это сделать:

В Kotlin вы можете легко преобразовывать строки в строки с заглавными буквами. Вот быстрый пример:

fun main() {
    val text = "kotlin программирование"
    val capitalizedText = text.split(" ").joinToString(" ") { it.capitalize() }
    println(capitalizedText)
}

Пример вывода:

Kotlin Программирование

Чтобы сделать заглавной только первую букву предложения:

fun main() {
    val sentence = "привет, энтузиасты kotlin!"
    val capitalizedSentence = sentence.replaceFirstChar { if (it.isLowerCase()) it.titlecase() else it.toString() }
    println(capitalizedSentence)
}

Пример вывода:

Привет, энтузиасты kotlin!

Обратите внимание, что capitalize() устарел. Используйте replaceFirstChar { it.titlecase() } для лучшей совместимости в будущем.

Подробнее

Методы преобразования в заглавные буквы изменились в Kotlin. capitalize() широко использовался, но был объявлен устаревшим в пользу replaceFirstChar { it.titlecase() }. Это изменение делает код более понятным в том, что происходит - это не просто преобразование в заглавные буквы, а замена первого символа на его эквивалент в верхнем регистре.

Почему преобразовать строки в строки с заглавными буквами? Это часто касается пользовательского интерфейса. Подумайте о названиях книг, именах или любом списке, где вам нужна последовательность. Это помогает с читаемостью и эстетикой.

Альтернативы преобразованию в заглавные буквы включают:

  • .toLowerCase(): Для преобразования в нижний регистр.
  • .toUpperCase(): Для преобразования всего текста в верхний регистр.
  • CSS в веб-разработке: иногда текст делают заглавным на фронтенде.

Внутри функции преобразования в заглавные буквы взаимодействуют с символами Юникода. Символы имеют определенные версии в верхнем регистре. Речь идет не просто о замене ‘а’ на ‘А’, а о понимании правил, специфичных для языка.

Не забывайте о локализации. Например, в турецком ‘i’ преобразуется в ‘İ’, а не в ‘I’. Таким образом, локально-агностичное преобразование может подвести вас в многоязычных приложениях.

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