hi I ve a list of item x = ( "xxxxx1" "xxxxx2" "yyyyx3") I need to extract a new vector y = ( "xxxx", "xxxx", "yyyy" ) I mean, for each item I need to extract the first 4 digit How is that possible? Thank you -- View this message in context: http://www.nabble.com/list-substring-tp22826435p22826435.html Sent from the R help mailing list archive at Nabble.com.
Dear celpeda, Try this: x = c( "xxxxx1", "xxxxx2", "yyyyx3") substr(x,1,4) [1] "xxxx" "xxxx" "yyyy" See ?substr for more details. HTH, Jorge On Wed, Apr 1, 2009 at 9:30 AM, calpeda <mauro.biasolo@calpeda.it> wrote:> > hi > I ve a list of item x = ( "xxxxx1" > "xxxxx2" > "yyyyx3") > > I need to extract a new vector y = ( "xxxx", > "xxxx", > "yyyy" > ) > I mean, for each item I need to extract the first 4 digit > How is that possible? > > Thank you > > -- > View this message in context: > http://www.nabble.com/list-substring-tp22826435p22826435.html > Sent from the R help mailing list archive at Nabble.com. > > ______________________________________________ > 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. >[[alternative HTML version deleted]]
try this: x <- c("xxxxx1", "xxxxx2", "yyyyx3") substr(x, 1, 4) Best, Dimitris calpeda wrote:> hi > I ve a list of item x = ( "xxxxx1" > "xxxxx2" > "yyyyx3") > > I need to extract a new vector y = ( "xxxx", > "xxxx", > "yyyy" > ) > I mean, for each item I need to extract the first 4 digit > How is that possible? > > Thank you >-- Dimitris Rizopoulos Assistant Professor Department of Biostatistics Erasmus University Medical Center Address: PO Box 2040, 3000 CA Rotterdam, the Netherlands Tel: +31/(0)10/7043478 Fax: +31/(0)10/7043014
calpeda wrote:> hi > I ve a list of item x = ( "xxxxx1" > "xxxxx2" > "yyyyx3") > > I need to extract a new vector y = ( "xxxx", > "xxxx", > "yyyy" > ) > I mean, for each item I need to extract the first 4 digit > How is that possible? >sub('^(\\d{4}).*', '\\1', x, perl=TRUE) vQ