Sobes.tech
Назад к вопросам
Junior — Middle
78

Как определить количество символов в строковом значении?

Компании, где спрашивали
Startribe

Ответ от нейросети

sobes.tech AI

В Go для определения количества символов в строке нужно учитывать, что строка — это последовательность байтов, а символы (руны) могут занимать несколько байтов (UTF-8).

Чтобы получить количество символов (рунов), используют функцию utf8.RuneCountInString из пакета unicode/utf8:

package main

import (
    "fmt"
    "unicode/utf8"
)

func main() {
    s := "Привет"
    count := utf8.RuneCountInString(s)
    fmt.Println(count)  // Выведет 6
}

Если использовать просто len(s), то будет возвращено количество байтов, а не символов.