我需要在 R 中编写一个查询来匹配列名称中的部分字符串。我正在寻找类似于 SQL 中的 LIKE 运算符的东西。例如,如果我知道字符串的开头、中间或结尾部分,我会按照以下格式编写查询:
LIKE 'beginning%middle%'
在 SQL 中,它将返回匹配的字符串。在pmatch
or grep
看来我只能指定“开始”、“结束”,而不能指定顺序。 R 中是否有我正在寻找的类似功能?
例如,假设我正在向量中查找:
y <- c("I am looking for a dog",
"looking for a new dog", "a dog", "I am just looking")
假设我想编写一个选择的查询"looking for a new dog"
我知道字符串的开头是"looking"
字符串的结尾是"dog"
。如果我做一个grep("dog",y)
它会返回1,2,3
。有什么方法可以指定开始和结束grep
?
The grep
函数支持正则表达式,使用正则表达式,您几乎可以匹配任何内容
y<- c("I am looking for a dog", "looking for a new dog", "a dog", "I am just looking")
grep("looking.*dog",y, value=T)
# [1] "I am looking for a dog" "looking for a new dog"
这个模式在这里寻找looking
然后“也许有什么”然后dog
。所以这应该做你想做的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)