我正在尋找一種簡單的方法來用普通字母替換所有帶點的字母。例如,我想將föó
更改爲foo
。我可以這樣做:R:用普通字母替換所有帶點的字母
gsub("ö|ó","o","föó")
但是,對於每個可能的標點符號都可能需要大量的手動工作。有沒有辦法自動做到這一點?
我正在尋找一種簡單的方法來用普通字母替換所有帶點的字母。例如,我想將föó
更改爲foo
。我可以這樣做:R:用普通字母替換所有帶點的字母
gsub("ö|ó","o","föó")
但是,對於每個可能的標點符號都可能需要大量的手動工作。有沒有辦法自動做到這一點?
你可以嘗試這樣一些變化:
cleanString <- function(x){
tmp <- iconv(x, from="UTF8", to ="ASCII//TRANSLIT")
gsub("[^[:alpha:]]", "", tmp)
}
x = "föó"
cleanString(x)
[1] "foo"
想法用iconv從Remove diacritics from a string
的重音符號和其他符號稱爲*變音符號* – Henry 2011-05-17 22:31:29