我试图用来grep
测试字符串向量是否存在于另一个向量中,并输出存在的值(匹配模式)。
我有一个像这样的数据框:
FirstName Letter
Alex A1
Alex A6
Alex A7
Bob A1
Chris A9
Chris A6
我在“字母”(Letter)列中有一个字符串模式向量,例如: c("A1", "A9", "A6")
。
我想检查模式向量中的任何字符串是否在“字母”列中。如果是的话,我希望输出唯一值。
问题是,我不知道如何使用grep
多种模式。我试过了:
matches <- unique (
grep("A1| A9 | A6", myfile$Letter, value=TRUE, fixed=TRUE)
)
但这给了我0个匹配,这是不正确的,有什么建议吗?
使用
—
David Arenburg
match
or %in%
或什至是比较完全匹配==
的唯一正确方法。正则表达式对于此类任务非常危险,并可能导致意外结果。
fixed=TRUE
因为您的模式是真正的正则表达式。