Extracting matched expressions
Is this what you want:
x <- 'xxxx xxxx one two three xxxx xxxx'
y <- sub(".*?([^[:space:]]+)[[:space:]]+([^[:space:]]+)[[:space:]]+([ehrt]{5}).*",
+ "\\1 \\2 \\3", x, perl=TRUE)
unlist(strsplit(y, ' '))
[1] "one" "two" "three"
On Sun, Nov 8, 2009 at 1:51 PM, Hadley Wickham <hadley at rice.edu> wrote:
Hi all,
Is there a tool in base R to extract matched expressions from a
regular expression? ?i.e. given the regular expression "(.*?) (.*?)
([ehtr]{5})" is there a way to extract the character vector c("one",
"two", "three") from the string "one two three" ?
Thanks,
Hadley
--
http://had.co.nz/
______________________________________________ R-help at 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.
Jim Holtman Cincinnati, OH +1 513 646 9390 What is the problem that you are trying to solve?