+ is a metacharacter, and must be escaped:

> X <- "one + two"
> gsub("\\+", "plus", X)
[1] "one plus two"

The help for gsub() tells you to read ?regexp - that's where
the details of regular expressions as implemented in R are
explained.

Sarah

On Sat, Jan 21, 2012 at 2:46 PM, Nevil Amos <nevil.a...@gmail.com> wrote:
> I am trying to replace "+" in a string with another character
> I am getting odd results using sub and gsub
>> X<-"one + two"
>> gsub("+","plus",X)
> [1] "plusoplusnpluseplus plus+plus plustpluswplusoplus"
>> sub("+","plus",X)
> [1] "plusone + two"
>> X<-"one ~ two"
>
> it seems to work fine with other characters:
>
>> sub("~","plus",X)
> [1] "one plus two"
>
>
> How do I enable "+" to be recognised as a normal character?
>
> thanks
>
> Nevil Amos
>


-- 
Sarah Goslee
http://www.functionaldiversity.org

______________________________________________
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