我想用R语言从连续的十六进制数字创建Unicode。例如,\u005C可以转换为字符,paste0 ("\u", "005C")不能转换为字符。因此,无法创建以下函数。
\u005C
paste0 ("\u", "005C")
hex.chr <- function(hex){paste0("\u", hex)} hex.chr("005C")
例如,在上面的例子中,如何创建一个只通过输入005C就可以转换为Unicode的函数?
005C
kxeu7u2r1#
您可以使用intToUtf8和paste0x来识别为 hex。
intToUtf8
paste
0x
hex.chr <- function(hex) {intToUtf8(paste0("0x", hex))} hex.chr("005C") #[1] "\\"
oiopk7p52#
x <- "\u005C" y <- "005C" eq_char_from_s <- function(s){ rawToChar(as.raw(strtoi(y, 16L))) } z <- eq_char_from_s(y) x == z #> [1] TRUE print(z) #> [1] "\\"
由reprex package(v2.0.1)于2023年1月4日创建
2条答案
按热度按时间kxeu7u2r1#
您可以使用
intToUtf8
和paste
0x
来识别为 hex。oiopk7p52#
由reprex package(v2.0.1)于2023年1月4日创建