grepを使用して、文字列内の任意の場所で任意の順序で複数のパターンを一致させる最短の方法は何ですか?好ましくは、1つの短い線で塩基Rを使用する。文字列内の任意の場所で任意の順序で複数のパターンを一致させる
は、ここに例を示します
私が含まれているすべての要素を見つけたい一緒my_vector
の要素で任意の場所で任意の順序の私matches
ベクトルでこの2つの要素の全て、、、要素の中にそれらの間にある任意の文字を使用します。
grep(paste0("(?=.*", paste0(matches, sep = ""), ")", collapse = ""),
my_vector,
perl = TRUE)
[1] 5 6 7
をしかし、もっと簡潔な方法があります:
matches <- c("fe", "ve")
# 1 2 3 4 5 6 7 8 9
my_vector <- c("fv", "v", "f", "f_v_e", "fe_ve", "feve", "vefe", "fve" , "a")
# want 5, 6, 7
私はこれを行うことができますか?私の例では、一致する要素が2つありますが、実際の問題にはいくつかの問題があります。
@ user2100721 - 8インチではどこですか? – thelatemail
@ user2100721 - *この2つの要素の** all **を含むすべての要素を検索したい* – thelatemail
@thelatemail:Ooh ...申し訳ありません。私は逃しました。ありがとう。 – user2100721