R替换字符串中的单词

时间:2013-08-06 01:06:00

标签: string grep edit gsub

我继承了一个带有截断文本字符串的数据框的r项目。根据本论坛的一些回复,我试过了

temp$taname2 <- gsub("\bDistr\b", "District", temp$taname2)

这不起作用。我试过了

temp$taname2 <- gsub("Distr", "District", temp$taname2)

但是这导致行已经包含单词&#34; District&#34;被改为&#34;地区&#34;,&#34;地区&#34;或类似。我也试过

temp$taname2[grep("\bDistr\b",temp$taname2)] <- "District"

但是,唉,没有运气。

我意识到答案非常简单,但我还没有找到解决办法。

提前致谢。

2 个答案:

答案 0 :(得分:2)

您需要使用正则表达式以及gsub函数。我认为这个问题在这里得到解答:In R, replace text within a string

希望这有帮助。

答案 1 :(得分:0)

使用stringi包:

require(stringi)

mydf<-data.frame(c("\bDistr\b", "\bDistr\b", "\bDistr\b", "\bDistr\b"))
stri_replace_all(mydf[,1], "", fixed="\b")
[1] "Distr" "Distr" "Distr" "Distr"