Я хочу использовать Ruby для преобразования кодовых точек в значения, которые легко найти в ссылках Unicode.
Я знаю, что могу получить саму кодовую точку, используя String#codepoints
, ("a".codepoints => [97]
), но я хочу вывести следующее через несколько методов, давайте назовем их convert_unicode
, convert_unicode_to_hex
и convert_unicode_to_codepoints
ради этого вопроса:
character = "a"
character.codepoints => [97]
convert_unicode("97") => "U+0061"
convert_unicode_to_hex("U+0061") => 0x61
convert_unicode_to_codepoints("U+0061") => 97
Я пытался использовать 97.to_s(16)
, но потом попал в беспорядок, когда добавлял отступы 0, потому что еще один пример Юникода, для которого я хотел бы работать, это U+1F028
. Как бы вы подошли к этой проблеме?