猿问
下载APP

如何使用grep()/ gsub()来查找完全匹配

如何使用grep()/ gsub()来查找完全匹配

string = c("apple", "apples", "applez")grep("apple", string)

这将为我提供所有三个元素的索引string。但我希望在单词“apple”上完全匹配(即我只想grep()返回索引1)。


慕莱坞7535251
浏览 52回答 2
2回答

交互式爱情

使用\b与单词和非单词字符之间匹配的单词边界,string = c("apple", "apples", "applez")grep("\\bapple\\b", string)[1] 1要么使用锚点。^断言我们刚开始。$断言我们到底是谁。grep("^apple$", string)[1] 1您可以将正则表达式存储在变量中,然后像下面一样使用它。pat <- "\\bapple\\b"grep(pat, string)[1] 1pat <- "^apple$"grep(pat, string)[1] 1更新:paste("^",pat,"$", sep="")[1] "^apple$"string[1] "apple"&nbsp; &nbsp;"apple:s" "applez"&nbsp;pat[1] "apple"grep(paste("^",pat,"$", sep=""), string)[1] 1

萧十郎

对于精确匹配,使用起来最有意义==。此外,这将更快grep(),并且显然更容易。which(string&nbsp;==&nbsp;"apple")#&nbsp;[1]&nbsp;1
打开App,查看更多内容
随时随地看视频慕课网APP
我要回答