Re: [R] simple q: returning a logical vector of substring matches

From: Marc Schwartz <>
Date: Sat 20 Jan 2007 - 18:58:04 GMT

On Sat, 2007-01-20 at 13:30 -0500, wrote:
> I'm a relative R novice, and sometimes the simple things trip me up.
> Suppose I have
> a <- c("apple", "pear")
> and I want a logical vector of whether each of these strings contains
> "ear" (in this case, F T). What is the idiom?
> Quizzically,
> Mark Lindeman

See ?grep and ?regexp

a <- c("apple", "pear")

> grep("ear", a)

[1] 2

> grep("ear", a, value = TRUE)
[1] "pear"

If you actually want the answer to be FALSE TRUE, then:

> a %in% grep("ear", a, value = TRUE)
[1] FALSE TRUE In that case see ?"%in%"

HTH, Marc Schwartz mailing list PLEASE do read the posting guide and provide commented, minimal, self-contained, reproducible code. Received on Sun Jan 21 06:07:59 2007

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.1.8, at Sat 20 Jan 2007 - 19:31:26 GMT.

Mailing list information is available at Please read the posting guide before posting to the list.