Зачастую при работе над программой требуется изменить регистр букв. Самые популярные случаи включают:

  • Сравнение, чувствительное к регистру;
  • Начало предложения с заглавной буквой;
  • Конвертация из camel-case в snake-case.

Для замены регистра используем функции ToLower, ToUpper, ToTitle и Title из пакета strings.

Форум Гоферов

Мы работаем над форумом для программистов на Golang. Очень нужны модераторы которые хотят помочь с ответами для новичков и помочь в развитии Go-сообщества.

Go на Форум

Уроки, статьи и Видео

Мы публикуем в паблике ВК и Telegram качественные обучающие материалы для быстрого изучения Go. Подпишитесь на нас в ВК и в Telegram. Поддержите сообщество Go программистов.

Go в ВК Go в Telegram

Как изменить регистр букв в строке Go?

1. Создайте файл case.go со следующим содержимым:

2. Запустите код через go run case.go;
3. Посмотрите на результат в терминале:

смена регистра golang

Функции ToLower(), ToUpper() и ToTitle() для изменения регистра

Обратите внимание, что в Юникоде отображение заголовка title-case отличается от отображения текста в верхнем регистре. Разница в том, что количество символов требует специальной обработки. В основном это лигатуры и диаграфы вроде fl, dz и lj, а также число греческих многогранных символов. К примеру, U+01C7 (LJ) отображается как U+01C8 (Lj), а не как U+01C9 (lj).

Для качественного сравнения, не чувствительного к регистру, нужно использовать функцию EqualFold из пакета strings. Данная функция использует конвертирование регистра для нормализации строк и их сравнения.