2017-04-18 116 views
0

当我使用命令下面的grep我的目标串pxgrep的字符串

x <- grep('px', readLines("file.txt")) 

[]an$px 

[1] 2 12 # x returns 2 and 12th line 

但是,当我想用​​grep字符串作为[1]$px

x <- grep('[1]$px', readLines("file.txt")) 

x回报integer(0)

我的问题是,我怎样才能得到212,而不是integer(0)如果我的目标字符串是[1]$px

+0

请剪切并粘贴文件(或其中的一部分)的文本,而不是发布图片链接! – Spacedman

回答

3

括号在正则表达式中携带特殊含义。将grep中的fixed=TRUE添加到您的参数中,告诉它将模式解释为原样。另一种选择是转义括号,但如果你不需要正则表达式的全部功能,只想搜索特定的字符串,那么使用fixed=TRUE反正是更好的选择。

x <- grep('[[1]]$px', readLines("file.txt"), fixed = TRUE)