Fabrice DELENTE wrote:
Hello.

Sorry for this very basic question but I didn't find (of didn't understand)
the answer either in the help or in the online guide.

I have a string, let's say "hello". I want to know if there is some
character in it, let's say an 'o'.

I tried

charmatch("o", strstplit("hello",""))

but it gives NA (why??)

Thinking it may be a type problem, I tried

charmatch("o",as.character(strsplit("hello","")))

but it gives NA too (why???)

So how can I know if a given string contains a given char?

Thanks!

try:

grep("o", "hello")

if the output is 1, there is a match. Note that the command is vectorized so:

grep("o", c("hello","pizza", "spam", "ogle"))

also works, picking out items 1 and 4 as containing an "o". The first argument to grep is a regular expression, and this can be very powerful. For example, which words start with a "p":

grep("^p", c("hello","pizza", "spam", "ogle"))

Check out more stuff on regular expressions on the internet. They are very powerful, but take some time to learn.

cheers,
Paul

--
Drs. Paul Hiemstra
Department of Physical Geography
Faculty of Geosciences
University of Utrecht
Heidelberglaan 2
P.O. Box 80.115
3508 TC Utrecht
Phone:  +3130 274 3113 Mon-Tue
Phone:  +3130 253 5773 Wed-Fri
http://intamap.geo.uu.nl/~paul

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to