正则表达式从电子邮件地址中查找名称

时间:2011-11-14 05:44:58

标签: ruby regex

我有这个样本数据

akb.ggb@yahoo.com           should output         akb ggb
sdsd.sdsd@gmail.com         should output         sdsd sdsd
asdasd.asasd@tmail.com       should output        asdasd asasd

我需要正则表达式才能从上面的电子邮件中找到全名。

任何帮助都应该受到赞赏。

2 个答案:

答案 0 :(得分:2)

^[^@]*将输出akb.ggb
然后你需要按'分拆'。性格......

正则表达式语法显然依赖于编程语言。

^([^\.@]+)\.*([^@]*)将在ruby和java中将第1组(capture-1)中的第一个名称和第2组(capture-2)中的姓氏(如果存在)放在一起。

您可以在线玩正则表达式:
Ruby
Java

答案 1 :(得分:1)

你没有告诉我们你的语言,但在java中,它看起来像是:

"akb.ggb@xyx.com".replaceAll("@.*", "").replace(".", " "); // "akb ggb"

这适用于任意数量的“名称”,例如alfred.e.neuman@mad.com的输入结果为"alfred e neuman"(三个字)