Just another possibility:
> sub("-([0-9])$", "0\\1", c("1-1-1",
"1-1-2", "1-2-1"))
[1] "1-101" "1-102" "1-201"
Regards,
Marc Schwartz
On Thu, 2006-10-19 at 23:38 -0400, Gabor Grothendieck
wrote:> Try this:
>
> sub("(-[^-]*)-", "\\10", c("1-1-1",
"1-1-2", "1-2-1"))
>
>
> On 10/19/06, ronggui <ronggui.huang at gmail.com> wrote:
> > I have a string vector like these:
> > [1] "1-1-1" "1-1-2" "1-2-1"
> >
> > And I wanna replace the second "-" with "0", that
is, I wanna get the result
> > like: [1] "1-101" "1-102" "1-201".
> >
> > How should I write the Regular Expressions? Thanks!
> >
> > --
> > ??????
> > Department of Sociology
> > Fudan University
> >
> > [[alternative HTML version deleted]]
> >
> >
> > ______________________________________________
> > R-help at stat.math.ethz.ch 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 at stat.math.ethz.ch 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.