Я изо всех сил пытаюсь автоматически перевести utf-8 в буквы ascii.
Во фрейме данных у меня есть следующая последовательность, которая происходит от греческих букв:
<U+03A0><U+0391><U+039D><U+0391>G
Вручную преобразовав последовательность в
\u03A0\u0391\u039D\u0391G
Я получил правильную транскрипцию, используя stringi с помощью этой команды:
t <- "\u03A0\u0391\u039D\u0391G" # original "ΠΑΝΑΓ"
t <- stri_trans_general(t,"any-latin")
t <- stri_trans_general(t,"latin-ascii")
print(t)
[1] "PANAG"
Теперь я хочу автоматизировать перевод с помощью stringr, используя:
t2 <- "<U+03A0><U+0391><U+039D><U+0391>G"
t2 <- str_replace_all(t2,">","")
t2 <- str_replace_all(t2,"<U+","\\u") # double \\ for the escape character
Результат:
[1] "+03A0+0391+039D+0391G"
Который нельзя перевести с помощью stringi
Может возникнуть вопрос, как перевести исходную строку utf-8 через stringr и stringi в буквы ascii, так как в моем фрейме данных много этих строковых последовательностей?
Я использую RStudio версии 0.99.825 на R.
R version 3.2.1 (2015-06-18)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1
locale: [1] LC_COLLATE=German_Austria.1252
RStudio и R работают как переносные приложения.
заранее спасибо
С уважением
Маркус