[R] gsub difficulty
Marc Schwartz
marc_schwartz at comcast.net
Tue Sep 23 19:35:47 CEST 2008
on 09/23/2008 12:16 PM Charles Annis, P.E. wrote:
> Greetings R-ians:
>
> I know what doesn’t work but I don’t know why, nor how to remedy things.
>
> I have a character string containing "." which I want to replace with " "
>
> gsub(".", " ", file.label) replaces the every character with a blank.
>
> However gsub(".xls", " ", file.label) replaces ".xls" with a blank as
> expected.
>
> It appears that "." is some kind of wild-card. How do I tell gsub that a
> period is just a period?
>
> Thanks.
A period is indeed a wild card, the interpretation meaning any character.
In your second example, the interpretation would be replace 'xls',
preceded by any character, with a space:
> gsub(".xls", " ", "xlsAxls.xls")
[1] "xls "
To specify a period as an explicit character, you need to escape it,
which in R means double the escape character:
> gsub("\\.xls", " ", "xlsAxls.xls")
[1] "xlsAxls "
HTH,
Marc Schwartz
More information about the R-help
mailing list