匹配表达式的确切部分

时间:2014-02-03 17:51:51

标签: regex r

我正在尝试匹配这样的字符串:

“某事 - 测试()更多”

我正在使用表达式:

  

grep(“test()”,text,value = TRUE)

但这也是匹配的:

“某事 - 测试某事()更多”

我希望它只匹配 test()当()紧跟在测试之后。感谢。

3 个答案:

答案 0 :(得分:2)

应该转义括号

grep( "\\btest\\(\\)" ) 

答案 1 :(得分:1)

转义括号:

grep("test\(\)", text, value=TRUE)

括号在正则表达式中具有特殊含义,他们说我们想捕捉匹配的内容。

答案 2 :(得分:1)

Escape parens:

text <- c("something-test() something more", "something-test something() more")
grep("test\\(\\)", text, value=TRUE)
# [1] "something-test() something more"