[R] Special characters in regular expressions
peter dalgaard
pdalgd at gmail.com
Thu Sep 24 12:38:28 CEST 2015
On 24 Sep 2015, at 12:05 , Thierry Onkelinx <thierry.onkelinx at inbo.be> wrote:
> gsub("[A|K]\\|", "", x)
That'll probably do it, but what was the point of the | in [A|K] ?? I don't think it does what I think you think it does...
Somewhat safer, maybe:
gsub("\\|[AK]\\|","\\|", x)
(avoids surprises from, say, "LBAM 5|A|15A|3h")
-pd
> [snip]
> 2015-09-24 11:52 GMT+02:00 Patrick Connolly <p_connolly at slingshot.co.nz>:
>
>> I need to change a vector dd that looks like this:
>> c("LBAM 5|A|15C|3h", "LBAM 5|K|15C|2h")
>>
>> into this:
>> c("LBAM 5|15C|3h", "LBAM 5|15C|2h")
>>
>> It's not very imaginative, but I could use a complicated nesting of
>> gsub() as so:
>>
>> gsub("-", "\\|", gsub("K-", "", gsub("A-", "", gsub("\\|", "-", dd))))
>>
>> Or I could make it a bit more readable by using interim objects,
>>
>> But I'd prefer to use a single regular expression that can detect "A|"
>> *and* "K|" without collateral damage from the impact of special
>> characters and regular characters.
>>
--
Peter Dalgaard, Professor,
Center for Statistics, Copenhagen Business School
Solbjerg Plads 3, 2000 Frederiksberg, Denmark
Phone: (+45)38153501
Office: A 4.23
Email: pd.mes at cbs.dk Priv: PDalgd at gmail.com
More information about the R-help
mailing list