Функция utf8.FullRune
Функция utf8.FullRune проверяет, содержит ли переданный слайс байт полную UTF-8 руну.
Она возвращает true, если слайс начинается с полной кодовой последовательности руны,
и false, если последовательность обрезана или слайс пустой.
Первым параметром функция принимает слайс байт []byte,
который нужно проверить на полноту руны.
Синтаксис
utf8.FullRune(p []byte) bool
Пример
Давайте проверим, является ли слайс байт полной руной для символа "A":
package main
import (
"fmt"
"unicode/utf8"
)
func main() {
p := []byte("A")
res := utf8.FullRune(p)
fmt.Println(res)
}
Результат выполнения кода:
true
Пример
Давайте проверим, является ли слайс байт полной руной для символа "я" (двухбайтовая руна):
package main
import (
"fmt"
"unicode/utf8"
)
func main() {
p := []byte("я")
res := utf8.FullRune(p)
fmt.Println(res)
}
Результат выполнения кода:
true
Пример
Давайте проверим, является ли слайс байт полной руной для обрезанного символа "я" (первый байт):
package main
import (
"fmt"
"unicode/utf8"
)
func main() {
p := []byte("я")[:1]
res := utf8.FullRune(p)
fmt.Println(res)
}
Результат выполнения кода:
false
Пример
Давайте проверим, является ли слайс байт полной руной для пустого слайса:
package main
import (
"fmt"
"unicode/utf8"
)
func main() {
var p []byte
res := utf8.FullRune(p)
fmt.Println(res)
}
Результат выполнения кода:
false
Смотрите также
-
функцию
utf8.FullRuneInString,
которая проверяет полноту руны в строке -
функцию
utf8.DecodeRune,
которая декодирует руну из слайса байт -
функцию
utf8.DecodeRuneInString,
которая декодирует руну из строки -
функцию
utf8.RuneCount,
которая подсчитывает количество рун в слайсе байт