Я знаю, что я могу избежать основного символа Unicode в Ruby с escape-последовательности \uNNNN
. Например, для улыбающегося лица U+263A (& # x263A;) Я могу использовать строковый литерал "\u2603"
.Вывод строки Ruby для дополнительной плоскости Unicode characters
Как избежать символов Юникода больше U + FFFF, которые выходят за пределы basic multilingual plane, как подмигивающая грань: U+1F609 (& # x1f609;)?
Использование формы суррогатной пары, как в Java, не работает; это приводит к недопустимым строке, которая содержит отдельную суррогатные точки коды:
s = "\uD83D\uDE09" # => "\xED\xA0\xBD\xED\xB8\x89"
s.valid_encoding? # => false