Hi,
May be this helps:
library(gsubfn)
as.numeric(strsplit(gsub("[c() ]","",gsubfn("([0-9]+)-([0-9]+)", 
~as.numeric(seq(x,y)),x)),",")[[1]])
#[1]  2  5  6  7 10 12 13 14 15
A.K.



----- Original Message -----
From: Chris Stubben <stub...@lanl.gov>
To: r-help@r-project.org
Cc: 
Sent: Wednesday, August 14, 2013 1:41 PM
Subject: [R] convert delimited strings with ranges to numeric

Is there an easy way to convert character strings with comma-separated 
numbers and ranges to a numeric vector?

x<-  "2,5-7,10,12-15"

[1]  2  5  6  7 10 12 13 14 15

Thanks,
Chris


-- 

Chris Stubben

Los Alamos National Lab
Bioscience Division
MS M888
Los Alamos, NM 87545

______________________________________________
R-help@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@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.

Reply via email to