Principal
Jak spočítat počet znaků (run) v řetězci v Go?
sobes.tech AI
Odpověď od AI
V jazyce Go, pro spočítání počtu znaků (rune) v řetězci je třeba vzít v úvahu, že řetězec je posloupností bajtů v UTF-8 a rune jsou Unicode body. Počet bajtů a počet rune se může lišit.
Pro spočítání počtu rune můžete použít funkci utf8.RuneCountInString z balíčku unicode/utf8:
import (
"fmt"
"unicode/utf8"
)
func main() {
s := "Привет, мир!"
count := utf8.RuneCountInString(s)
fmt.Println("Počet rune:", count)
}
Tato metoda správně spočítá počet znaků, včetně vícibajtových rune.