Here are two solutions using gsubfn package.
strapply works by matching the what you want
rather than what you don't want which may make
it easier in this case.  The two solutions are the
same except we use \\ escapes in the first and
[ ... ] in the second, i.e. \\( has the same effect
as [(].   In each case we first match the ( then
a sequence of characters that is not ] and finally
we match the terminating ].

> library(gsubfn)
> x <- "(-0.791,-0.263].(-38,-1.24].(0.96,2.43]"

> strapply(x, "\\([^]]+[]]")[[1]]
[1] "(-0.791,-0.263]" "(-38,-1.24]"     "(0.96,2.43]"

> strapply(x, "[(][^]]+[]]")[[1]]
[1] "(-0.791,-0.263]" "(-38,-1.24]"     "(0.96,2.43]"


On Tue, Mar 3, 2009 at 1:16 AM,  <markle...@verizon.net> wrote:
> can someone show me how to use a regular expression to break the string at
> the bottom up into its three components :
>
> (-0.791,-0.263]
> (-38,-1.24]
> (0.96,2.43]
>
> I tried to use strplit because of my regexpitis ( it's not curable. i've
> been to many doctors all over NYC. they tell me there's no cure  )  but it
> doesn't work because there also dots inside  the brackets. Thanks.
>
> (-0.791,-0.263].(-38,-1.24].(0.96,2.43]
>
> ______________________________________________
> 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.
>

______________________________________________
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