I am trying to use grep to test whether a vector of strings are present in an another vector or not, and to output the values that are present (the matching pat
In addition to @Marek's comment about not including fixed==TRUE, you also need to not have the spaces in your regular expression. It should be "A1|A9|A6".
You also mention that there are lots of patterns. Assuming that they are in a vector
toMatch <- c("A1", "A9", "A6")
Then you can create your regular expression directly using paste and collapse = "|".
matches <- unique (grep(paste(toMatch,collapse="|"),
myfile$Letter, value=TRUE))