Hi Duncan, You can try this: library(readr) f <- function(s) { t <- unlist(readr::tokenize(paste0(gsub(" ",",",s),"\n",collapse=""))) i <- grep("[a-zA-Z0-9]*/[a-zA-Z0-9]*/",t) u <- sub("[a-zA-Z0-9]*/[a-zA-Z0-9]*/","",t[i]) paste0(u,collapse=" ") }
f("f 147/1315/587 2820/1320/587 3624/1321/587 1852/1322/587") # "587 587 587 587" f("f 1067 28680 24462") # "" HTH, Eric On Mon, Oct 9, 2017 at 6:23 PM, Ulrik Stervbo <ulrik.ster...@gmail.com> wrote: > Hi Duncan, > > why not split on / and take the correct elements? It is not as elegant as > regex but could do the trick. > > Best, > Ulrik > > On Mon, 9 Oct 2017 at 17:03 Duncan Murdoch <murdoch.dun...@gmail.com> > wrote: > > > I have a file containing "words" like > > > > > > a > > > > a/b > > > > a/b/c > > > > where there may be multiple words on a line (separated by spaces). The > > a, b, and c strings can contain non-space, non-slash characters. I'd > > like to use gsub() to extract the c strings (which should be empty if > > there are none). > > > > A real example is > > > > "f 147/1315/587 2820/1320/587 3624/1321/587 1852/1322/587" > > > > which I'd like to transform to > > > > " 587 587 587 587" > > > > Another real example is > > > > "f 1067 28680 24462" > > > > which should transform to " ". > > > > I've tried a few different regexprs, but am unable to find a way to say > > "transform words by deleting everything up to and including the 2nd > > slash" when there might be zero, one or two slashes. Any suggestions? > > > > Duncan Murdoch > > > > ______________________________________________ > > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > > 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]] > > ______________________________________________ > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > 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]] ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.