(我正在使用R.)对于名为“goodwords.corpus”的单词列表,我循环遍历文集中的文档,并将单词“goodwords.corpus”中的每个单词替换为单词+一个数字。让gsub只替换整个单词?
因此,举例来说,如果字“好”是在名单上,而“晚安”是不在名单上,那么这个文件:
I am having a good time goodnight
会变成:
I am having a good 1234 time goodnight
**我使用这个代码(编辑 - 使这个重复性):
goodwords.corpus <- c("good")
test <- "I am having a good time goodnight"
for (i in 1:length(goodwords.corpus)){
test <-gsub(goodwords.corpus[[i]], paste(goodwords.corpus[[i]], "1234"), test)
}
然而,问题是我想GSUB只更换整套WO RDS。出现的问题是:“良好”在“goodwords.corpus”列表中,但是不在列表中的“晚安”也受到影响。所以,我得到这个:
I am having a good 1234 time good 1234night
反正是有,我可以告诉GSUB只能更换整个单词,而不是的话,可能是其他词的一部分?
我想用这样的:
test <-gsub("\\<goodwords.corpus[[i]]\\>", paste(goodwords.corpus[[i]], "1234"), test)
}
我读过的\ <和\>将告诉GSUB仅查找整个单词。但显然这不起作用,因为goodwords.corpus [[i]]在引号中时不起作用。
有什么建议吗?
请让你的例子可重现:http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example –
是的。请做。你在这里有机会。 GG是正则表达式解决方案的公认大师。 –
刚刚编辑原始帖子与可重复的代码。非常感谢!! – user2303557