Dear R useRs, Sorry for this foolish question, but I can't find how to escape the * character when using grep :> grep("-", c("/3", "2*3", "4-4"))[1] 3> grep("/", c("/3", "2*3", "4-4"))[1] 1> grep("*", c("/3", "2*3", "4-4"))Erreur dans grep("*", c("/3", "2*3", "4-4")) : expression régulière incorrecte '*' De plus : Warning message: In grep("*", c("/3", "2*3", "4-4")) : erreur rgcomp : 'Expression régulière précédente incorrecte'> grep("\*", c("/3", "2*3", "4-4"))Erreur dans grep("*", c("/3", "2*3", "4-4")) : expression régulière incorrecte '*' De plus : Warning messages: 1: '\*' est un code escape non reconnu dans une chaîne de caractères 2: code escape non reconnu éliminé de "\*" 3: In grep("*", c("/3", "2*3", "4-4")) : erreur rgcomp : 'Expression régulière précédente incorrecte' Best regards, david [[alternative HTML version deleted]]
Use double backslashes:
grep("\\*", c("/3", "2*3", "4-4"))
2009/1/9 David Hajage <dhajage.r@gmail.com>
> Dear R useRs,
>
> Sorry for this foolish question, but I can't find how to escape the *
> character when using grep :
>
> > grep("-", c("/3", "2*3",
"4-4"))
> [1] 3
> > grep("/", c("/3", "2*3",
"4-4"))
> [1] 1
> > grep("*", c("/3", "2*3",
"4-4"))
> Erreur dans grep("*", c("/3", "2*3",
"4-4")) :
> expression régulière incorrecte '*'
> De plus : Warning message:
> In grep("*", c("/3", "2*3", "4-4"))
:
> erreur rgcomp : 'Expression régulière précédente incorrecte'
> > grep("\*", c("/3", "2*3",
"4-4"))
> Erreur dans grep("*", c("/3", "2*3",
"4-4")) :
> expression régulière incorrecte '*'
> De plus : Warning messages:
> 1: '\*' est un code escape non reconnu dans une chaîne de
caractères
> 2: code escape non reconnu éliminé de "\*"
> 3: In grep("*", c("/3", "2*3",
"4-4")) :
> erreur rgcomp : 'Expression régulière précédente incorrecte'
>
> Best regards,
>
> david
>
> [[alternative HTML version deleted]]
>
>
> ______________________________________________
> 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.
>
>
--
Henrique Dallazuanna
Curitiba-Paraná-Brasil
25° 25' 40" S 49° 16' 22" O
[[alternative HTML version deleted]]
On 1/9/2009 10:38 AM, David Hajage wrote:> Dear R useRs, > > Sorry for this foolish question, but I can't find how to escape the * > character when using grep :You use a backslash to escape the *. Unfortunately, to enter a backslash in an R string, you need to escape it. So the pattern is "\\*". Duncan Murdoch> >> grep("-", c("/3", "2*3", "4-4")) > [1] 3 >> grep("/", c("/3", "2*3", "4-4")) > [1] 1 >> grep("*", c("/3", "2*3", "4-4")) > Erreur dans grep("*", c("/3", "2*3", "4-4")) : > expression r?guli?re incorrecte '*' > De plus : Warning message: > In grep("*", c("/3", "2*3", "4-4")) : > erreur rgcomp : 'Expression r?guli?re pr?c?dente incorrecte' >> grep("\*", c("/3", "2*3", "4-4")) > Erreur dans grep("*", c("/3", "2*3", "4-4")) : > expression r?guli?re incorrecte '*' > De plus : Warning messages: > 1: '\*' est un code escape non reconnu dans une cha?ne de caract?res > 2: code escape non reconnu ?limin? de "\*" > 3: In grep("*", c("/3", "2*3", "4-4")) : > erreur rgcomp : 'Expression r?guli?re pr?c?dente incorrecte' > > Best regards, > > david > > [[alternative HTML version deleted]] > > > > ------------------------------------------------------------------------ > > ______________________________________________ > 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.
* must be escaped for grep with \ and \ must be escaped for R itself
with another \, so you need
grep("\\*", c("/3", "2*3", "4-4"))
Gabor
2009/1/9 David Hajage <dhajage.r at gmail.com>:> Dear R useRs,
>
> Sorry for this foolish question, but I can't find how to escape the *
> character when using grep :
>
>> grep("-", c("/3", "2*3",
"4-4"))
> [1] 3
>> grep("/", c("/3", "2*3",
"4-4"))
> [1] 1
>> grep("*", c("/3", "2*3",
"4-4"))
> Erreur dans grep("*", c("/3", "2*3",
"4-4")) :
> expression r?guli?re incorrecte '*'
> De plus : Warning message:
> In grep("*", c("/3", "2*3", "4-4"))
:
> erreur rgcomp : 'Expression r?guli?re pr?c?dente incorrecte'
>> grep("\*", c("/3", "2*3",
"4-4"))
> Erreur dans grep("*", c("/3", "2*3",
"4-4")) :
> expression r?guli?re incorrecte '*'
> De plus : Warning messages:
> 1: '\*' est un code escape non reconnu dans une cha?ne de
caract?res
> 2: code escape non reconnu ?limin? de "\*"
> 3: In grep("*", c("/3", "2*3",
"4-4")) :
> erreur rgcomp : 'Expression r?guli?re pr?c?dente incorrecte'
>
> Best regards,
>
> david
>
> [[alternative HTML version deleted]]
>
>
> ______________________________________________
> 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.
>
>
--
Gabor Csardi <Gabor.Csardi at unil.ch> UNIL DGM
Use fixed = TRUE argument to grep. 2009/1/9 David Hajage <dhajage.r at gmail.com>:> Dear R useRs, > > Sorry for this foolish question, but I can't find how to escape the * > character when using grep : > >> grep("-", c("/3", "2*3", "4-4")) > [1] 3 >> grep("/", c("/3", "2*3", "4-4")) > [1] 1 >> grep("*", c("/3", "2*3", "4-4")) > Erreur dans grep("*", c("/3", "2*3", "4-4")) : > expression r?guli?re incorrecte '*' > De plus : Warning message: > In grep("*", c("/3", "2*3", "4-4")) : > erreur rgcomp : 'Expression r?guli?re pr?c?dente incorrecte' >> grep("\*", c("/3", "2*3", "4-4")) > Erreur dans grep("*", c("/3", "2*3", "4-4")) : > expression r?guli?re incorrecte '*' > De plus : Warning messages: > 1: '\*' est un code escape non reconnu dans une cha?ne de caract?res > 2: code escape non reconnu ?limin? de "\*" > 3: In grep("*", c("/3", "2*3", "4-4")) : > erreur rgcomp : 'Expression r?guli?re pr?c?dente incorrecte' > > Best regards, > > david > > [[alternative HTML version deleted]] > > > ______________________________________________ > 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. > >
Hi there, you probably want something like:
# R
grep("\\*", c("/3", "2*3", "4-4"))
hope that helps a little,
Tony Breyal
On 9 Jan, 15:38, "David Hajage" <dhajag... at gmail.com>
wrote:> Dear R useRs,
>
> Sorry for this foolish question, but I can't find how to escape the *
> character when using grep :
>
> > grep("-", c("/3", "2*3",
"4-4"))
> [1] 3
> > grep("/", c("/3", "2*3",
"4-4"))
> [1] 1
> > grep("*", c("/3", "2*3",
"4-4"))
>
> Erreur dans grep("*", c("/3", "2*3",
"4-4")) :
> ? expression r?guli?re incorrecte '*'
> De plus : Warning message:
> In grep("*", c("/3", "2*3", "4-4"))
:
> ? erreur rgcomp : 'Expression r?guli?re pr?c?dente incorrecte'>
grep("\*", c("/3", "2*3", "4-4"))
>
> Erreur dans grep("*", c("/3", "2*3",
"4-4")) :
> ? expression r?guli?re incorrecte '*'
> De plus : Warning messages:
> 1: '\*' est un code escape non reconnu dans une cha?ne de
caract?res
> 2: code escape non reconnu ?limin? de "\*"
> 3: In grep("*", c("/3", "2*3",
"4-4")) :
> ? erreur rgcomp : 'Expression r?guli?re pr?c?dente incorrecte'
>
> Best regards,
>
> david
>
> ? ? ? ? [[alternative HTML version deleted]]
>
> ______________________________________________
> R-h... at r-project.org mailing
listhttps://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guidehttp://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.