如何从字符串中获取电子邮件地址

时间:2010-08-26 07:43:03

标签: flex flash actionscript-3 actionscript actionscript-2

我正在寻找一种从给定字符串中检索所有电子邮件地址的方法。 例如:如果我有字符串“AB CD [ABCD@gmail.com]”我只想收到“ABCD@gmail.com”。

我想我应该使用RegExp和String匹配功能,但我不确定如何。

有什么想法吗?

2 个答案:

答案 0 :(得分:5)

String.match确实是要走的路:

var email:String = "foo foo bar@barbar.com sploof";
var matches:Array = email.match(/[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/g); 

这使用正则表达式来匹配regexr的社区正则表达式中的RFC2822。

答案 1 :(得分:0)

我建议你阅读here关于匹配电子邮件的正确正则表达式。是的,您应该使用您的语言的match功能,但请记住,您必须使您的正则表达式适应您的电子邮件模式,例如,在这种情况下,您可能包含[]

我也建议使用Regex Buddy来尝试和测试regexp,这是imho中最好的工具。