Скалярные значения Unicode и кодовые точки
Получайте базовые скалярные значения текста.
«Скалярные значения Unicode и кодовые точки» — бесплатный урок Swift Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Swift Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Swift Academy содержит 4 уроков всего.
Скаляры Unicode
Скаляр Unicode — это одна кодовая точка в стандарте Unicode, представленная типом Unicode.Scalar. Символы состоят из одного или нескольких скаляров.
let scalar: Unicode.Scalar = "A"
print(scalar)
print(scalar.value)Свойство value
Каждый скаляр имеет числовое свойство .value: его кодовую точку Unicode, представленную числом. Буква A имеет значение 65.
let a: Unicode.Scalar = "A"
let z: Unicode.Scalar = "Z"
print(a.value, z.value)Представление unicodeScalars
Строка предоставляет доступ к своим скалярам через .unicodeScalars — коллекцию, которую можно перебирать.
for scalar in "Hi".unicodeScalars {
print(scalar, scalar.value)
}Скаляры и символы
Один Character может содержать несколько скаляров. Буква с диакритическим знаком состоит из двух скаляров, но является одним символом.
let accented = "e\u{301}"
print("Characters:", accented.count)
print("Scalars:", accented.unicodeScalars.count)Кодовые точки в шестнадцатеричном формате
Скаляр можно записать с помощью его кодовой точки в шестнадцатеричном формате, используя escape-последовательность с обратной косой чертой, буквой u и фигурными скобками.
let heart = "\u{2764}"
print(heart)
for s in heart.unicodeScalars { print(s.value) }Создание скаляров из чисел
Можно создать Unicode.Scalar из целочисленной кодовой точки; эта операция может завершиться неудачей, поскольку допустимы не все числа.
if let s = Unicode.Scalar(65) {
print(s)
}Диапазоны скаляров
Поскольку у скаляров есть числовые значения, их можно сравнивать и перебирать в диапазоне — например, чтобы проверить, является ли скаляр цифрой ASCII.
let s: Unicode.Scalar = "7"
let isDigit = s.value >= 48 && s.value <= 57
print("Is digit:", isDigit)Свойство ASCII
У скаляра есть свойство .isASCII, которое показывает, входит ли он в диапазон ASCII.
let a: Unicode.Scalar = "a"
let emoji: Unicode.Scalar = "\u{1F600}"
print(a.isASCII, emoji.isASCII)Свойства скаляров
Скаляры предоставляют богатый набор свойств Unicode, например возможность определить, являются ли они буквами или пробельными символами, через .properties.
let space: Unicode.Scalar = " "
print(space.properties.isWhitespace)Разложение символов на скаляры
Можно разложить Character на составляющие его скаляры и посмотреть, как он сформирован.
let c: Character = "e\u{301}"
for s in c.unicodeScalars {
print(s.value)
}Зачем нужны скаляры
Работа на уровне скаляров необходима для низкоуровневой обработки текста, кодирования и понимания того, как составлены символы.
let flag = "\u{1F1F9}\u{1F1F7}"
print("Characters:", flag.count)
print("Scalars:", flag.unicodeScalars.count)Быстрая проверка
Вспомните, как связаны скаляры и символы.
Итоги: скаляры Unicode и кодовые точки
Вы узнали, что Unicode.Scalar — это одна кодовая точка с числовым .value, что строки предоставляют представление .unicodeScalars и что один Character может состоять из нескольких скаляров, что важно при низкоуровневой работе с текстом.
let text = "A\u{301}"
print("Characters:", text.count)
for s in text.unicodeScalars { print(s.value) }Часто задаваемые вопросы
Урок «Скалярные значения Unicode и кодовые точки» бесплатный?
Да — полный текст урока «Скалярные значения Unicode и кодовые точки» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Swift Academy, подпишись на CoddyKit PRO. Курс Swift Academy содержит 4 уроков всего.
Чему я научусь в уроке «Скалярные значения Unicode и кодовые точки»?
Получайте базовые скалярные значения текста. Ты практикуешь Swift Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Swift Academy?
Предыдущий опыт не требуется. Swift Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Скалярные значения Unicode и кодовые точки»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Swift Academy?
Да. Каждый урок Swift Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Символы и графемные кластеры
- Скалярные значения Unicode и кодовые точки
- Подсчёт и перебор символов
- Представления кодировок: utf8, utf16, unicodeScalars