РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
221 of 1593 menu

Константа utf8.RuneSelf

Константа utf8.RuneSelf представляет собой максимальное значение, которое может быть закодировано одним байтом в UTF-8. Её значение равно 0x80 (128 в десятичной системе). Все символы с кодом меньше этого значения кодируются одним байтом, что соответствует ASCII-символам. Эта константа полезна при низкоуровневой работе с UTF-8 строками и байтовыми последовательностями.

Синтаксис

utf8.RuneSelf

Пример

Давайте выведем значение константы utf8.RuneSelf:

package main import ( "fmt" "unicode/utf8" ) func main() { res := utf8.RuneSelf fmt.Println(res) }

Результат выполнения кода:

128

Пример

Давайте используем utf8.RuneSelf для проверки, является ли байт началом многобайтового символа:

package main import ( "fmt" "unicode/utf8" ) func main() { b := byte('A') if b < utf8.RuneSelf { fmt.Println("This byte is a single-byte character") } b2 := byte(0xE0) if b2 >= utf8.RuneSelf { fmt.Println("This byte is a start of multi-byte character") } }

Результат выполнения кода:

"This byte is a single-byte character" "This byte is a start of multi-byte character"

Пример

Давайте сравним байты строки с utf8.RuneSelf, чтобы определить количество однобайтовых символов:

package main import ( "fmt" "unicode/utf8" ) func main() { str := "Hello, 世界" count := 0 for i := 0; i < len(str); i++ { if str[i] < utf8.RuneSelf { count++ } } fmt.Printf("Single-byte characters: %d\n", count) fmt.Printf("Total bytes: %d\n", len(str)) }

Результат выполнения кода:

"Single-byte characters: 7" "Total bytes: 13"

Смотрите также

  • константу utf8.MaxRune,
    которая определяет максимальное значение руны
  • константу utf8.UTFMax,
    которая определяет максимальное количество байт для руны
  • константу utf8.RuneError,
    которая представляет собой код ошибки для некорректных рун
  • функцию utf8.RuneLen,
    которая возвращает количество байт для руны
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить