[R] Hep with regex! - combination of ^, |, \\, _ and $

Duncan Murdoch murdoch.duncan at gmail.com
Fri Sep 18 01:27:50 CEST 2015


On 17/09/2015 5:46 PM, Dimitri Liakhovitski wrote:
> Duncan,
> Of course my verbal descriptions and my code don't match my regexp -
> otherwise I wouldn't be asking the question, would I?
> Please assume my verbal descriptions are correctly describing what I want.

Sorry, I interpreted "works" and "does not work" to be saying that R's
regexp matching was working or not.

I think you've got your answers from others now...

Duncan Murdoch

> Thank you!
> 
> On Thu, Sep 17, 2015 at 5:42 PM, Duncan Murdoch
> <murdoch.duncan at gmail.com> wrote:
>> On 17/09/2015 5:11 PM, Dimitri Liakhovitski wrote:
>>> (x <- c("q10_1", "q10_2", "q10_11", "q12_1", "q12_2", "q13_1", "q13_11"))
>>>
>>> # Which strings start with "q10" or "q12? - WORKS
>>> x[grep("^q10|q12", x)]
>>>
>>> # Which strings end with "1"? - WORKS
>>> x[grep("1$", x)]
>>>
>>> # Which strings end with "_1"? - WORKS
>>> x[grep("\\_1$", x)]
>>>
>>> # Which strings start with "q10" AND contain a "1"? - WORKS
>>> x[grep("^q10.+1", x)]
>>>
>>> # Which strings start with "q10" AND end with a "_1"? - DOES NOT WORK
>>> x[grep("^q10.+\\_1$", x)]
>>
>> Your verbal description doesn't match your regexp, and you didn't show
>> us your output, so how can we tell whether this is you not understanding
>> regular expressions, or an actual problem?
>>
>> When I try this example, I get
>>
>> character(0)
>>
>> which is the correct outcome, given the input string.
>>
>> Duncan Murdoch
>>
>>>
>>> # Which strings start with "q10" or "q12 AND end with "_1"? - WORKS INCORRECTLY
>>> x[grep("^q10|q12.+\\_1$", x)]
>>>
>>> Thank you!
>>> Dimitri Liakhovitski
>>>
>>> ______________________________________________
>>> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
>>> 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.
>>>
>>
> 
> 
>



More information about the R-help mailing list