Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Remove everything before period [duplicate]

Tags:

regex

r

I want to remove everything before period (.) sign in the following string in R. I tried with gsub function.

Test <- c("Data.A", "Data.B", "Data.C", "Data.D")
gsub("[.]", "", Test)

Any help will be highly appreciated. Thanks

like image 931
MYaseen208 Avatar asked Aug 25 '11 04:08

MYaseen208


2 Answers

Try this: gsub("^.*\\.", "", Test)

What's it doing? Matches the beginning of the string with any character, any number of times. Then matches a single period. It replaces all of that with nothing.

> gsub("^.*\\.", "", Test)
[1] "A" "B" "C" "D"
like image 74
Chase Avatar answered Nov 15 '22 05:11

Chase


Or if you find regular expressions abhorrent, you could use sapply and strsplit:

sapply(strsplit(Test,".",fixed = TRUE),"[[",2)
[1] "A" "B" "C" "D"

This is splitting each element on the '.' and then grabbing just the second element of the result from each.

like image 22
joran Avatar answered Nov 15 '22 05:11

joran