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

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

Константа utf8.MaxRune из пакета unicode/utf8 определяет максимальное значение кодовой точки в стандарте Unicode. Это значение равно 0x10FFFF, что соответствует последнему допустимому кодовому символу в Unicode. Константа часто используется при валидации рун, проверке допустимых значений символов и при работе с кодировкой UTF-8.

Синтаксис

utf8.MaxRune

Пример

Давайте выведем значение константы utf8.MaxRune в различных системах счисления:

package main import ( "fmt" "unicode/utf8" ) func main() { fmt.Printf("Десятичное: %d\n", utf8.MaxRune) fmt.Printf("Шестнадцатеричное: 0x%X\n", utf8.MaxRune) fmt.Printf("Двоичное: %b\n", utf8.MaxRune) }

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

"Десятичное: 1114111" "Шестнадцатеричное: 0x10FFFF" "Двоичное: 100001111111111111111"

Пример

Рассмотрим, как использовать utf8.MaxRune для проверки допустимости руны в цикле по строке:

package main import ( "fmt" "unicode/utf8" ) func main() { str := "Hello, 世界!" for _, r := range str { if r <= utf8.MaxRune { fmt.Printf("Руна '%c' допустима (код: %d)\n", r, r) } else { fmt.Printf("Руна '%c' недопустима\n", r) } } }

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

"Руна 'H' допустима (код: 72)" "Руна 'e' допустима (код: 101)" "Руна 'l' допустима (код: 108)" "Руна 'l' допустима (код: 108)" "Руна 'o' допустима (код: 111)" "Руна ',' допустима (код: 44)" "Руна ' ' допустима (код: 32)" "Руна '世' допустима (код: 19990)" "Руна '界' допустима (код: 30028)" "Руна '!' допустима (код: 33)"

Пример

Покажем, как использовать utf8.MaxRune для проверки корректности декодированной руны:

package main import ( "fmt" "unicode/utf8" ) func main() { data := []byte{0xF0, 0x9F, 0x8C, 0x8D} // символ 🌍 r, size := utf8.DecodeRune(data) if r <= utf8.MaxRune { fmt.Printf("Руна: %c (код: %d, размер: %d байт)\n", r, r, size) } else { fmt.Printf("Недопустимая руна: %d\n", r) } }

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

"Руна: 🌍 (код: 127757, размер: 4 байт)"

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

  • константу utf8.RuneError,
    которая обозначает код ошибки для некорректных рун
  • константу utf8.RuneSelf,
    которая определяет границу между ASCII и многобайтовыми символами
  • функцию utf8.ValidRune,
    которая проверяет, является ли руна допустимой в Unicode
  • константу utf8.UTFMax,
    которая определяет максимальное количество байтов в кодировке UTF-8 (4 байта)
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить