this should do what you want: > myexstrings = c("*AAA.AA","BBB BB","*.CCC.","**dd- d") > a = gsub("^\\W*","", myexstrings,perl=T) > b = gsub("\\W.*", "", a, perl=T) > b [1] "AAA" "BBB" "CCC" "dd"
first one, removes any non-word characters from the beginning (as you already figured out) second one, removes any remaining non-word characters AND everything following.
on 06/27/2008 06:23 AM Tom.O said the following:
Hi R gurus I have a matching problem that I cant solve. I have tried multiple solutions and searched varius help-sites but I cant get it to work. This is the problem myexstrings = c("*AAA.AA","BBB BB","*.CCC.","**dd- d") what I want do do is to remove any non-characters in the beginning and everything else after the non-character symbol after the first set of characters so that the string becomes: c("AAA","BBB","CCC","dd") I can figure out the start, sub("^\\W*","", myexstrings,perl=T) will remove the unwanted beginnings but then its the rest. And please no links to any helppages, I have been looking at most of them for the last hour without any success. Thanks Regards Tom
______________________________________________ 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.