Sobes.tech
Principal

Cum se numără numărul de caractere (rune) într-un șir în Go?

sobes.tech AI

Răspuns de la AI

În Go, pentru a număra numărul de caractere (rune) dintr-un șir, trebuie să țineți cont că șirul este o secvență de octeți în UTF-8, iar rune-urile sunt puncte de cod Unicode. Numărul de octeți și numărul de rune-uri pot fi diferite.

Pentru a număra rune-urile, puteți folosi funcția utf8.RuneCountInString din pachetul unicode/utf8:

import (
    "fmt"
    "unicode/utf8"
)

func main() {
    s := "Привет, мир!"
    count := utf8.RuneCountInString(s)
    fmt.Println("Numărul de rune:", count)
}

Această metodă numără corect numărul de caractere, inclusiv rune-urile multibyte.