Hi,
May be this helps:

dat <- read.table(text="Emails
mal...@gmail.com
mah...@gmail.com
ravi_...@yahoo.com
lavk....@rediff.com",sep="",header=TRUE,stringsAsFactors=FALSE)


 
setNames(cbind(dat,do.call(rbind,strsplit(gsub(".com","",gsub("^([[:alpha:]]+)(\\d+.*)","\\1_\\2",dat$Emails)),"[_@.]"))),c("Emails","f.name","l.name","domain"))
#               Emails f.name l.name domain
#1    mal...@gmail.com    Mal    123  gmail
#2    mah...@gmail.com   Mahi      r  gmail
#3  ravi_...@yahoo.com   Ravi    123  yahoo
#4 lavk....@rediff.com   Lavk    lll rediff


A.K.


Hi,

Emails

mal...@gmail.com

mah...@gmail.com

ravi_...@yahoo.com

lavk....@rediff.com

I need split firstname,lastname,domail(only gmail,not gmail.com),also 123 in
last name,so please give me help

Output is 

Emails                                     f.name   l.name    domain

mal...@gmail.com         mal           123           gmail

mah...@gmail.com           mahi        r                gmail

ravi_...@yahoo.com     ravi       123            gmail

lavk....@rediff.com

Please give me solution

______________________________________________
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.

Reply via email to