Функция unicode.ToTitle

Функция unicode.ToTitle преобразует переданный символ типа rune в его заглавный вариант в стиле title. В отличие от функции unicode.ToUpper, которая преобразует символ к заглавной букве в верхнем регистре, функция unicode.ToTitle использует специальные правила для преобразования в стиль title, которые могут отличаться для некоторых языков и символов. В первый параметр функция принимает символ rune, который необходимо преобразовать. Функция возвращает преобразованный символ типа rune или исходный символ, если для него не существует варианта в стиле title.

Синтаксис

gounicode.ToTitle(r)

Пример

Давайте преобразуем символ 'a' в заглавный вариант в стиле title:

gopackage main

import (
  "fmt"
  "unicode"
)

func main() {
  r := 'a'
  res := unicode.ToTitle(r)
  fmt.Printf("%c\n", res)
}

Результат выполнения кода:

go"A"

Пример

Давайте преобразуем символ 'ß' (немецкая буква эсцет) в заглавный вариант в стиле title. В отличие от unicode.ToUpper, которая преобразует 'ß' в 'SS' (два символа), функция unicode.ToTitle возвращает тот же символ, так как для него не существует специального варианта в стиле title:

gopackage main

import (
  "fmt"
  "unicode"
)

func main() {
  r := 'ß'
  res := unicode.ToTitle(r)
  fmt.Printf("%c\n", res)
}

Результат выполнения кода:

go"ß"

Пример

Рассмотрим разницу между unicode.ToUpper и unicode.ToTitle на примере символа 'DŽ' (латинская заглавная буква DZ с кароном):

gopackage main

import (
  "fmt"
  "unicode"
)

func main() {
  r := 'DŽ'
  upper := unicode.ToUpper(r)
  title := unicode.ToTitle(r)
  fmt.Printf("ToUpper: %c, ToTitle: %c\n", upper, title)
}

Результат выполнения кода:

go"ToUpper: DŽ, ToTitle: DŽ"

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

  • функцию unicode.ToUpper,
    которая преобразует символ к верхнему регистру
  • функцию unicode.ToLower,
    которая преобразует символ к нижнему регистру
  • функцию unicode.IsUpper,
    которая проверяет, является ли символ заглавным
  • функцию unicode.IsLower,
    которая проверяет, является ли символ строчным