[R] Retrieve regular expression groups
Gabor Grothendieck
ggrothendieck at gmail.com
Mon May 3 03:28:51 CEST 2010
There are quite a few examples in
(1) ?strapply,
(2) on the home page and
(3) in the vignette
(4) on r-help back posts
if you having problems with understanding the textual description.
Note that X and FUN are also arguments to sapply
> args(sapply)
function (X, FUN, ..., simplify = TRUE, USE.NAMES = TRUE)
NULL
so the sapply construct in your post has the effect of applying c to
tmp, pats and strapply so the output you observe is correct. The
sapply command never even calls strapply.
On Sun, May 2, 2010 at 8:20 PM, OKB (not okblacke)
<brenbarn at brenbarn.net> wrote:
> Gabor Grothendieck wrote:
>
>> The strapply function in gsubfn does that. See
>> http://gsubfn.googlecode.com
>
> Ah, thanks. The documentation for that function is pretty
> difficult to grasp, but I think I figured it out. . . almost. However,
> for some reason I can't seem to make strapply work inside an sapply (to
> do multiple regex searches over the same data). For instance, take a
> look at this toy setup.
>
>> pats
> [1] "([^ ]+) .i. ([^ ]+)" "([^ ]+) ..g ([^ ]+)"
>> tmp
> [1] "this is a big test" "this is a pig test" "this is a lim test"
> "this is a non test" "this is a big foolio"
> [6] "this is a wig foolio" "this is a fog test" "this is a bog test"
>
> With these data, strapply(tmp, pats[1], c) works as expected, as
> does strapply(tmp, pats[2], c). However, this doesn't work:
>
> sapply(pats, strapply, X=tmp, FUN=c)
>
> Instead it returns a strange table, some of whose elements contain the
> code of strapply itself. Also, the above code gives different results
> depending on whether I specify "X=tmp" or simply "tmp" as the third
> argument. Shouldn't these be the same, since X is the first argument of
> strapply? Any idea what's going on here?
>
> Thanks again,
> --
> --OKB (not okblacke)
> Brendan Barnwell
> "Do not follow where the path may lead. Go, instead, where there is
> no path, and leave a trail."
> --author unknown
>
> ______________________________________________
> 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.
>
More information about the R-help
mailing list