我正在尝试使用正则表达式将字符串向量与模式中的所有单位进行匹配,而不管R中的顺序如何。
mystring = c("sdxuslinafchangdfasd", "fdschangfsdahxufhglin", ",kjujudsyrg")
pattern = c("xu", "chang", "lin")
我的想法是:
grepl("xu", mystring) & grepl("chang", mystring) & grepl("lin", mystring)
这当然可以得到我想要的东西。但随着模式中字符串数量的增加,编码变得麻烦。我知道如果我只想要任何一个模式,我可以使用下面的代码,但是&似乎没有在grepl中工作:
grepl("xu|chang|lin", mystring)
我的精神是:当R中的字符串数量和模式中的单位数量很大时,是否有足够快速和简洁的方法来解决这个问题?优先级是速度,而次要优先级是代码的简洁性。感谢。