在R中的数据帧中用正则表达式检测字边界

Dan*_*yuk 5 regex r word-boundary dataframe

我有一个data.frame命名all,其中包含一系列因子,这些因素包括"word","nonword"以及其他一些因素.我的目标是只选择具有因子值"word"的行.

我的解决方案grep("\bword\b",all[,5])没有返回

如何识别单词边界?

Sve*_*ein 17

在R中,您需要两次\:

grep("\\bword\\b", all[5])
Run Code Online (Sandbox Code Playgroud)

替代方案:

grep("^word$", all[5])

which(all[5] == "word")
Run Code Online (Sandbox Code Playgroud)

  • +1模式`grep("^ word $",...)`将匹配整个字符串,而不仅仅是单词..即使在这里它们没有什么区别. (3认同)