Sobes.tech
Principal

Как да преброим броя на символите (руните) в низ в Go?

sobes.tech AI

Отговор от AI

В езика Go, за да преброите броя на символите (rune) в низ, трябва да имате предвид, че низът е последователност от байтове в UTF-8, а руни са Unicode кодови точки. Броят на байтовете и броят на руни може да се различават.

За да преброите броя на руни, можете да използвате функцията utf8.RuneCountInString от пакета unicode/utf8:

import (
    "fmt"
    "unicode/utf8"
)

func main() {
    s := "Привет, мир!"
    count := utf8.RuneCountInString(s)
    fmt.Println("Брой руни:", count)
}

Този метод правилно брои броя на символите, включително многобайтните руни.