[R] Help with regular expressions

Boris Steipe boris.steipe at utoronto.ca
Tue Feb 13 03:38:14 CET 2018


You can either use positive lookahead/lookbehind - but support for that is a bit flaky. Or write a proper regex, and use
backreferences to keep what you need.

R > x <- "abc 1,1 ,1 1, x,y 2,3 "

R > gsub("(\\d),(\\d)", "\\1.\\2", x, perl = TRUE)
[1] "abc 1.1 ,1 1, x,y 2.3 "


B.



> On Feb 12, 2018, at 9:34 PM, Jim Lemon <drjimlemon at gmail.com> wrote:
> 
> Hi Dennis,
> How about:
> 
> 
> # define the two values to search for
> x<-2
> y<-3
> # create your search string and replacement string
> repstring<-paste(x,y,sep=",")
> newstring<-paste(x,y,sep=".")
> # this is the string that you want to change
> thetastring<-"SIGMA(2,3)"
> sub(repstring,newstring,thetastring)
> [1] "SIGMA(2.3)"
> 
> Use gsub if you want to change multiple values
> 
> Jim
> 
> On Tue, Feb 13, 2018 at 1:22 PM, Dennis Fisher <fisher at plessthan.com> wrote:
>> R 3.4.2
>> OS X
>> 
>> Colleagues
>> 
>> I would appreciate some help with regular expressions.
>> 
>> I have string that looks like:
>>        " ITERATION              ,THETA1                 ,THETA2                 ,THETA3                 ,THETA4                 ,THETA5                 ,THETA6                 ,THETA7                 ,SIGMA(1,1)             ,SIGMA(2,1)             ,SIGMA(2,2)”
>> 
>> In the entries that contain:
>>        (X,Y)                   # for example, SIGMA(1,1)
>> I would like to replace the comma with a period, e.g., SIGMA(1.1) but NOT the other commas
>> 
>> The end-result would be:
>>        " ITERATION              ,THETA1                 ,THETA2                 ,THETA3                 ,THETA4                 ,THETA5                 ,THETA6                 ,THETA7                 ,SIGMA(1.1)             ,SIGMA(2.1)             ,SIGMA(2.2)”
>> 
>> Can someone provide the regular expression code to accomplish this?
>> Thanks.
>> 
>> Dennis
>> 
>> Dennis Fisher MD
>> P < (The "P Less Than" Company)
>> Phone / Fax: 1-866-PLessThan (1-866-753-7784)
>> www.PLessThan.com
>> 
>> ______________________________________________
>> 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.
> 
> ______________________________________________
> 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