[R] Regex for ^ (the caret symbol)?
Jeff Newmiller
jdnewmil at dcn.davis.CA.us
Mon Jan 21 19:05:30 CET 2013
So what is the special behavior of the ^ symbol when not at the beginning of the string that occurs when it is not escaped?
---------------------------------------------------------------------------
Jeff Newmiller The ..... ..... Go Live...
DCN:<jdnewmil at dcn.davis.ca.us> Basics: ##.#. ##.#. Live Go...
Live: OO#.. Dead: OO#.. Playing
Research Engineer (Solar/Batteries O.O#. #.O#. with
/Software/Embedded Controllers) .OO#. .OO#. rocks...1k
---------------------------------------------------------------------------
Sent from my phone. Please excuse my brevity.
Duncan Murdoch <murdoch.duncan at gmail.com> wrote:
>On 13-01-21 11:48 AM, Jeff Newmiller wrote:
>> I am not sure I understand what worked perfectly, since it is my
>understanding that ^ is only special at the beginning of the regex (to
>anchor the pattern at the beginning of the target string) or as the
>first character of a character set (to indicate exclusion of the listed
>characters). In any other position the caret should behave like an
>ordinary character. That is, your original pattern should have worked
>as-is. This is supported by the help page documentation for regex in
>the paragraph below the definition of [:xdigit:]. I think this is a bug
>in R.
>
>It's a documentation error rather than a bug. The ^ character is
>special anywhere in the extended RE syntax defined by the TRE library
>or the Perl-compatible library that we use. This is inconsistent with
>the POSIX standard, which might be what you were thinking of.
>
>Duncan Murdoch
>
>
>
>>
>---------------------------------------------------------------------------
>> Jeff Newmiller The ..... ..... Go
>Live...
>> DCN:<jdnewmil at dcn.davis.ca.us> Basics: ##.#. ##.#. Live
>Go...
>> Live: OO#.. Dead: OO#..
>Playing
>> Research Engineer (Solar/Batteries O.O#. #.O#. with
>> /Software/Embedded Controllers) .OO#. .OO#.
>rocks...1k
>>
>---------------------------------------------------------------------------
>> Sent from my phone. Please excuse my brevity.
>>
>> mtb954 at gmail.com wrote:
>>
>>> Hi Tsjerk, many thanks...that worked perfectly!
>>>
>>> Mark Na
>>>
>>>
>>>
>>> On Mon, Jan 21, 2013 at 9:36 AM, Tsjerk Wassenaar
><tsjerkw at gmail.com>
>>> wrote:
>>>
>>>> Oh, I'm jetlagged. ^ is a control character for 'start of string'.
>In
>>> the
>>>> context of a character set it means negation: [^a-z].
>>>>
>>>> Ciao,
>>>>
>>>> Tsjerk
>>>>
>>>>
>>>> On Mon, Jan 21, 2013 at 4:33 PM, Tsjerk Wassenaar
>>> <tsjerkw at gmail.com>wrote:
>>>>
>>>>> Hi Mark Na,
>>>>>
>>>>> Try:
>>>>>
>>>>> grepl("latitude\\^2",temp)
>>>>>
>>>>> ^ is a control character for negation, so you have to escape it.
>>>>>
>>>>> Cheers,
>>>>>
>>>>> Tsjerk
>>>>>
>>>>>
>>>>> On Mon, Jan 21, 2013 at 4:26 PM, <mtb954 at gmail.com> wrote:
>>>>>
>>>>>> Hello R-helpers,
>>>>>>
>>>>>> I am trying to search for string that includes the caret symbol,
>>> using
>>>>>> the
>>>>>> following code:
>>>>>>
>>>>>> grepl("latitude^2",temp)
>>>>>>
>>>>>>
>>>>>> And R doesn't like that. It gives me:
>>>>>>
>>>>>>> temp<-c("latitude^2","latitude and
>>> latitude^2","longitude^2","longitude
>>>>>> and longitude^2")
>>>>>>> temp
>>>>>> [1] "latitude^2" "latitude and latitude^2"
>>> "longitude^2"
>>>>>> "longitude and longitude^2"
>>>>>>> grepl("latitude^2",temp)
>>>>>> [1] FALSE FALSE FALSE FALSE
>>>>>>
>>>>>>
>>>>>> I think this must a regex problem, but I can't find out to
>specify
>>> the
>>>>>> caret using regex.
>>>>>>
>>>>>> I would appreciate any help you could provide.
>>>>>>
>>>>>> Many thanks,
>>>>>>
>>>>>> Mark Na
>>>>>>
>>>>>> [[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.
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Tsjerk A. Wassenaar, Ph.D.
>>>>>
>>>>> post-doctoral researcher
>>>>> Biocomputing Group
>>>>> Department of Biological Sciences
>>>>> 2500 University Drive NW
>>>>> Calgary, AB T2N 1N4
>>>>> Canada
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Tsjerk A. Wassenaar, Ph.D.
>>>>
>>>> post-doctoral researcher
>>>> Biocomputing Group
>>>> Department of Biological Sciences
>>>> 2500 University Drive NW
>>>> Calgary, AB T2N 1N4
>>>> Canada
>>>>
>>>
>>> [[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.
>>
>> ______________________________________________
>> 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.
>>
More information about the R-help
mailing list