R 关于在给定向量中查找字符串
给定一个字符串,如R 关于在给定向量中查找字符串,r,R,给定一个字符串,如xyz,以及一个字符串向量,如 abc xyz cde fgh xyz 是否有一个函数可以输出该向量中xyz的位置,这里应该是(2,5);以及发生的次数,这里应该是2 library(stringr) yourlist = c("abc", "xyz", "cde", "fgh", "xyz") which(str_detect(yourlist, "xyz")) 这将返回2和5。另一种方法,基本R: regmatches(yourlist, gregexpr(patter
xyz
,以及一个字符串向量,如
abc
xyz
cde
fgh
xyz
是否有一个函数可以输出该向量中xyz
的位置,这里应该是(2,5);以及发生的次数,这里应该是2
library(stringr)
yourlist = c("abc", "xyz", "cde", "fgh", "xyz")
which(str_detect(yourlist, "xyz"))
这将返回2和5。另一种方法,基本R:
regmatches(yourlist, gregexpr(pattern = "xyz", text = yourlist,ignore.case = TRUE, perl = TRUE))
[[1]]
character(0)
[[2]]
[1] "xyz"
[[3]]
character(0)
[[4]]
character(0)
[[5]]
[1] "xyz"
输出更长,但它也确认了找到了什么(“xyz”),以及在哪些位置使用这样一个简单操作真正需要的外部包?那就
哪一个(你的列表==“xyz”)
?@最近的邮件你完全正确!除非您关心子字符串,例如,如果“xyzz”包含“xyz”,简单的布尔运算将完成此工作。grep(“xyz”,yourlist)
在base R中,您也介绍了第二种情况str_detect
本质上只是包含在R中的grepl
的包装器。