我想要一个正则表达式模式,允许mailto:link有多个电子邮件地址
我试过以下模式:
"((href|src)(\\S)*?=(\\S)*?)?(\"|'|)(((mailto:)?(?:[A-Z0-9._-])@(?:[A-Z0-9.-])\\.[A-Z]([,;]\\s*(?:[A-Z0-9._-])@(?:[A-Z0-9.-])\\.[A-Z])*(</a>)?))"
示例:
<a href = mailto:abc@abc.com,sdf@abc.com>mail me</a>;
这种正则表达式是否正确?
答案 0 :(得分:0)
以这种方式验证多封电子邮件可能是一种过度杀伤力。检查此http://forums.sun.com/thread.jspa?threadID=5427060&tstart=45如果电子邮件来自同一个域,则可以进一步简化。
答案 1 :(得分:0)
简短回答 - 不。有效的电子邮件地址将被过滤掉。仅举一个例子,+
是一个完全有效的字符,位于电子邮件地址的本地部分(对许多人而言是一个重要的部分),您将拒绝。
更长的答案 - 不,你不打算写一个技术意义上的“正确”的正则表达式(符合RFC 5322)。本地部分几乎可以包含任何字符,因为它们由目标邮件服务器解释;它们也可以用引号括起来。最好的方法是不使用正则表达式,而是使用一个像样的第三方验证器。