【发布时间】:2018-11-14 23:22:10
【问题描述】:
样本数据
a<-c("hour","four","ruoh", "six", "high", "our")
我想查找所有包含 o & u & h & 的字符串都是 4 个字符,但顺序无关紧要。
我要回"hour","four","ruoh"
这是我的尝试
grepl("o+u+r", a) nchar(a)==4
【问题讨论】:
-
如何分别测试。您首先测试(使用 grep)向量的哪些元素包含“o”,通过的人,您测试他们是否有“u”,通过的人测试“h”。
-
@Cris 这是最简单的方法吗?
-
“四”不包含o&u&h。
-
@neilfws 我已经做了修改
-
见Regular Expressions: Is there an AND operator?;
grepl("(?=.*h)(?=.*o)(?=.*u)", a, perl = TRUE)