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

detecting word boundary with regex in data frame in R


我有一个名为 all 的 data.frame,它有一列因素,这些因素包括 “word”、”nonword” 和其他一些因素。我的目标是只选择具有因子值”word”的行。

我的解决方案 grep(“\\bword\\b”,all[,5]) 什么也不返回。

为什么不识别单词边界?

  • 为什么不只是 all %>% filter(column %in%”word”)?


在 R 中,你需要两次 \\:

1
grep(“\\\\bword\\\\b”, all[5])

替代解决方案:

1
2
3
grep(“^word$”, all[5])

which(all[5] ==”word”)

  • 您的两个解决方案都有效,谢谢。你知道为什么”\\\\bword\\\\b” 在这种情况下不起作用吗?
  • 1 模式 grep(“^word$”, …) 将匹配整个字符串,而不仅仅是单词..即使在这里它们没有任何区别。


来源:https://www.codenong.com/17906003/

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?