首页 > 解决方案 > 如何用双反斜杠对 R 中的字符串进行编码?

问题描述

R中是否有任何简单的方法可以用双反斜杠对字符串进行编码?我从一个网站中提取了一些数据,并意识到数据中的单词被解码了。以下是部分数据:

'"option_name\":\"\\uc81c\\ud488\\uc120\\ud0dd#$%\\uc0c9\\uc0c1\"'

我希望它是:

'"option_name":"제품선택#$%색상"'

如果我手动替换字符串中的双反斜杠并打印,它工作正常,但我想避免手动工作。如果有人可以帮助我解决这个问题,那就太好了?

标签: rstringencode

解决方案


鉴于提供的示例,它似乎没有“双反斜杠”——也许你的意思是双引号?

在任何一种情况下,冒号右边的字符串都是 Unicode,所以这样的东西会正确编码:

string <- "\uc81c\ud488\uc120\ud0dd#$%\uc0c9\uc0c1"
new_string <- enc2utf8(string)
cat(new_string)
"제품선택#$%색상"

如果要将整个选择视为一个字符串,可以将其用单引号括起来:

string <- '"option_name":"\uc81c\ud488\uc120\ud0dd#$%\uc0c9\uc0c1"'
new_string <- enc2utf8(string)
cat(new_string)    
"option_name":"제품선택#$%색상"

# to remove the double quotes at the same time:
new_string <- gsub('\"', "", enc2utf8(string))
cat(new_string)
option_name:제품선택#$%색상

推荐阅读