Regular expressions & sub
On 18 Aug 2005 at 21:17, Peter Dalgaard wrote:
Dirk Eddelbuettel <edd at debian.org> writes:
Bernd Weiss <bernd.weiss <at> uni-koeln.de> writes:
I am struggling with the use of regular expression. I got
as.character(test$sample.id)
[1] "1.11" "10.11" "11.11" "113.31" "114.2" "114.3" "114.8" and need [1] "11" "11" "11" "31" "2" "3" "8" I.e. remove everything before the "." .
Define the dot as the hard separator, and allow for multiple digits before it:
sample.id <- c("1.11", "10.11", "11.11", "113.31", "114.2",
"114.3", "114.8") gsub("^[0-9]*\.", "", sample.id)
[1] "11" "11" "11" "31" "2" "3" "8"
Or, more longwinded, but with less assumptions about what goes before the dot:
gsub("^.*\\.(.*)$","\\1",sample.id)
[1] "11" "11" "11" "31" "2" "3" "8"
Wow, thanks a lot for all the valuable suggestions. Bernd