Следующий пример взят из Документация строк и символов:
Значения 55357
(U+D83D
в шестнадцатеричном формате) и 56374
(U+DC36
в шестнадцатеричном виде) являются суррогатными парами, которые формируют скаляр Unicode U+1F436
, который является символом DOG FACE
. Есть ли способ пойти в другую сторону? То есть, могу ли я преобразовать суррогатную пару в скаляр?
Я пробовал
let myChar: Character = "\u{D83D}\u{DC36}"
но я получил ошибку "Неверный Unicode скалярный".
Этот ответ Objective C и этот проект, по-видимому, являются обычными решениями, но есть ли что-нибудь встроенное в Swift (особенно Swift 2.0+), которое это делает?