Sobes.tech
Junior — Middle

Ako určiť dĺžku reťazca v znakoch v jazyku Go?

sobes.tech AI

Odpoveď od AI

V Go je reťazec sekvencia bajtov, nie znakov Unicode. Ak chcete získať dĺžku reťazca v znakoch (runách), musíte reťazec previesť na rez run a zmerať jeho dĺžku:

s := "Привет"
length := len([]rune(s))
fmt.Println(length) // Zobrazí počet znakov

Keďže jeden Unicode znak môže zaberieť viac bajtov, použitie len(s) dáva počet bajtov, nie znakov.