Создать необработанный символ Юникода из представления шестнадцатеричной строки

Учитывая строковое шестнадцатеричное представление символа Unicode, я хотел бы напечатать символ Unicode, который он представляет

julia> s1, s2 = raw"\u0041", raw"\x41"
julia> println(s1,' ', s2)
\u0041 \x41

Вместо этого я хочу, чтобы он печатал "A A"

Вариант использования: Для демонстрации я хотел бы перебрать диапазон значений и распечатать карту из шестнадцатеричного представления в Unicode:

for ii = 0x0021 : 0x007f
    hex_rep = string(ii, base=16)
    unicode = raw"\u" * lpad(hex_rep, 4, '0')
    println(hex_rep, " -> ", unicode)
end

Возможно docs.julialang.org/en/v1/base/strings/#Base.unescape_string

Shawn 10.04.2022 00:08

Почему вы сначала конвертируете в строку? Почему бы не перейти напрямую от шестнадцатеричного к символу?

DNF 10.04.2022 00:17

@DNF Потому что я давно не использовал язык, который различает строки и символы, и мой разум был сосредоточен на том, чтобы заставить его работать со строками ?. Таким образом, Char - правильный способ для моего фактического варианта использования, а unescape_string - лучший подход к моему вопросу, как задано.

LexTron 10.04.2022 05:55
В чем разница между методом "==" и equals()
В чем разница между методом "==" и equals()
Это один из наиболее часто задаваемых вопросов новичкам на собеседовании. Давайте обсудим его на примере.
Замена символа по определенному индексу в JavaScript
Замена символа по определенному индексу в JavaScript
В JavaScript существует несколько способов заменить символ в строке по определенному индексу.
1
3
33
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете просто сделать:

julia> Char.(0x0021 : 0x007f)
95-element Vector{Char}:
 '!': ASCII/Unicode U+0021 (category Po: Punctuation, other)
 '"': ASCII/Unicode U+0022 (category Po: Punctuation, other)
 '#': ASCII/Unicode U+0023 (category Po: Punctuation, other)
 ⋮
 '}': ASCII/Unicode U+007D (category Pe: Punctuation, close)
 '~': ASCII/Unicode U+007E (category Sm: Symbol, math)
 '\x7f': ASCII/Unicode U+007F (category Cc: Other, control)

В других случаях рассмотрите возможность использования вышеупомянутого unescape_string

Другие вопросы по теме