[R] Q about strsplit and regexp

Stephen Upton supton at referentia.com
Wed Oct 20 15:32:32 CEST 2004


Hi Andy,

A slight variation on Jean-Pierre's:

x <- unlist(strsplit("  a b    c ","[[:space:]]"))
x <- x[nchar(x) > 0]

HTH
steve

> -----Original Message-----
> From: r-help-bounces at stat.math.ethz.ch [mailto:r-help-
> bounces at stat.math.ethz.ch] On Behalf Of Liaw, Andy
> Sent: Wednesday, October 20, 2004 8:16 AM
> To: R-Help
> Subject: [R] Q about strsplit and regexp
> 
> Dear R-help,
> 
> This one is probably a piece of cake for regexp masters.  I'd like to
> split
> a character vector (for simplicity, say of length one for now) that
> contains
> fields that are delimited by arbitrary number of white spaces (e.g., "  a
> b
> c ").  How do I get the character vector that contain the fields?  In the
> example I gave, I've tried:
> 
> > strsplit("  a b    c ", " +")
> [[1]]
> [1] ""  "a" "b" "c"
> 
> I do not want that empty character in the beginning, but couldn't figure
> out
> how to strip the starting white spaces, other than something ugly like:
> 
> > strsplit(sub("^ +", "", "  a b    c "), " +")
> [[1]]
> [1] "a" "b" "c"
> 
> Can some kind soul point me to a simpler way?  TIA!!
> 
> Best,
> Andy
> 
> Andy Liaw, PhD
> Biometrics Research      PO Box 2000, RY33-300
> Merck Research Labs           Rahway, NJ 07065
> andy_liaw <at> merck.com          732-594-0820
> 
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! http://www.R-project.org/posting-
> guide.html




More information about the R-help mailing list