【发布时间】:2011-04-22 14:25:19
【问题描述】:
如果有一个可以处理这个问题,那么从来自电子邮件表单“To”行的字符串中提取电子邮件地址的正确正则表达式模式是什么,它允许地址用逗号“,”,分号分隔“;”、空格或三者的任意组合。正则表达式还必须能够忽略“噪音”文本,例如地址是否包含在“”字符中,或者在电子邮件地址旁边有一个实际名称。例如,来自 To 字段中的这个字符串:
"Joe Smith" <jsmith@example.com>, kjones@aol.com; someoneelse@nowhere.com mjane@gmail.com
该模式应该能够返回以下匹配项: jsmith@example、kjones@aol.com、someoneelse@nowhere.com、mjane@gmail.com
我正在使用 PHP,所以如果这不能在单个正则表达式中完成,那么我肯定对其他基于 PHP 的解决方案持开放态度。
谢谢
【问题讨论】:
-
使用电子邮件解析库。无需自己执行此操作。 (您不是第一个需要解析电子邮件标头的 PHP 程序员。)
标签: php regex email-validation