grep没有返回R中的预期结果

时间:2016-06-19 21:24:57

标签: r grep

我正在尝试从R中的data.frame中获取一个字段名称列表,其中包含“mean()”。

但是,举个例子,如果我跑:

grep("mean()", "fld_meanFreq()")

当我期待0时,它会返回一个答案,即1。

当我在字段名称列表上做类似的事情时,我得到的字段名称包含“mean()”和“meanFreq()”。

如何解决?在这里的搜索中我没有看到任何与此相关的内容。

1 个答案:

答案 0 :(得分:4)

grep假定第一个参数是正则表达式,如果您不提供fixed=TRUE选项。在您的示例中,mean()中的括号表示子表达式(在本例中为空表示),因此您的示例非常等同于

grep("mean", "fld_meanFreq()")

相反,请尝试:

grep("mean()", "fld_meanFreq()", fixed=TRUE)

有关正则表达式的更多信息,请阅读regex上的R帮助。