[R] grep with "|" character

Duncan Murdoch murdoch at stats.uwo.ca
Tue Oct 23 12:41:55 CEST 2007


On 23/10/2007 6:34 AM, Daniel Brewer wrote:
> Hi,
> 
> I am having a problem searching for the "|" character in a string.
> 
>> grep("|",stringvector)
> Gives all the strings in a vector but when I try to escape it
>> grep("\|",stringvector)
> It comes up with the error
> Warning messages:
> 1: '\|' is an unrecognized escape in a character string
> 2: unrecognized escape removed from "\|"
> 
> 
> Anyone know how to solve this?

Grep needs to see the escape character, so you need to escape that too, 
i.e. use


grep("\\|",stringvector)

The \\ is the way to enter a single backslash in an R string.  The 
vertical bar isn't special to R, so it doesn't need escaping at that level.

Duncan Murdoch



More information about the R-help mailing list