Как узнать количество букв в строке на кириллице

«Как узнать количество букв в строке на кириллице» — вопрос из категории Golang, который задают на 23% собеседований Golang Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Для корректного подсчета символов в строке с кириллицей используйте utf8.RuneCountInString(), так как len() вернет количество байт, а не символов.

s := "Привет"
count := utf8.RuneCountInString(s) // 6

Важные моменты:

  1. len() даст неверный результат (12 для "Привет")
  2. Работает с любыми Unicode-символами
  3. Для итерации по строке тоже используйте range, он корректно обрабатывает Unicode

Пример:

for i, r := range "Привет" {
    fmt.Printf("%d: %cn", i, r)
}