Преобразование акцентированных символов в символ ascii - программирование
Подтвердить что ты не робот

Преобразование акцентированных символов в символ ascii

Каков оптимальный способ удаления немецких (или французских) акцентов из вектора из 16 миллионов строковых переменных.

например, синдром Сигрена в синдром Сёгрена

Конвекция одного символа в один символ лучше транслитерации, такой как

ä = > ae ö = > oe ü = > ue.

например, использование регулярного выражения будет одним из вариантов, но есть ли что-то лучшее (R-пакет для этого)?

gsub('ü','u',gsub('ö','o',"Sjögren syndrome ( über) "))

Существуют решения SO для платформ, отличных от R, но не для R.

4b9b3361

Ответ 1

Используйте iconv для преобразования в ASCII с транслитерацией (если поддерживается):

iconv(c("über","Sjögren's"),to="ASCII//TRANSLIT")
[1] "uber"      "Sjogren's"

Ответ 2

Один из связанных ответов предполагает

library(stringi)
stri_trans_general("Zażółć gęślą jaźń", "Latin-ASCII")

[1] "Zazolc gesla jazn"