本文提供一个兼顾兼容性与安全性的邮箱正则表达式,支持用户名中包含下划线(_),同时避免以 _ 开头,并确保域名部分结构合理,适用于大多数Web表单场景。
本文提供一个兼顾兼容性与安全性的邮箱正则表达式,支持用户名中包含下划线(`_`),同时避免以 `_` 开头,并确保域名部分结构合理,适用于大多数web表单场景。
在前端表单验证或后端初步校验中,使用正则表达式快速判断邮箱格式是否合法是一种常见做法。但需注意:正则无法完全替代RFC 5322标准或SMTP协议级验证,它仅用于过滤明显非法输入。原始正则 /^(?!.*_)w+([.-]?w+)*@w+([.-]?w+)*(.w{2,3})/ 错误地禁止了所有下划线(_),而实际中如 [email protected] 是合法且广泛使用的格式。
✅ 推荐改进后的正则表达式(支持下划线、拒绝开头下划线、增强可读性):
^[a-zA-Z0-9][w.-]*@[a-zA-Z0-9][w.-]*.[a-zA-Z]{2,}$
说明:
⚠️ 注意事项:
总结:正则只是第一道轻量防线。本文提供的表达式在简洁性、可维护性与实用性之间取得良好平衡,既接纳合法的 _ 字符,又规避常见陷阱(如开头下划线、空段、无效TLD),适合绝大多数业务场景快速落地。