星点 星点-正则工具 本系列首页
关于
版本 v1.0.0

邮箱正则表达式

邮箱校验不必追求覆盖所有 RFC 特殊写法。下面这条 ^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$ 覆盖绝大多数真实邮箱。

默认正则

/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$/

匹配常见邮箱:@ 前为字母数字与 . _ % + -,@ 后为域名,最后是至少 2 位字母的顶级域。

邮箱正则 · 规则说明

RFC 5322 允许大量特殊写法,但绝大多数真实邮箱都很规整。工程上通常使用“够用且可读”的简化正则。

@ 前允许字母、数字以及 . _ % + - 等常见字符;@ 后为域名标签,点号分隔,最后一段顶级域至少 2 个字母。

该规则不覆盖带引号的本地部分、IP 字面量域名等罕见形式;如需严格校验,应结合邮件确认链接而非仅靠正则。

正确示例

  • user@example.com
  • a.b+c@sub.example.cn
  • name_01@test.org

错误示例

  • user@
  • @example.com
  • user@example
  • user example@test.com

边界与注意事项

常见问题

Q:为什么 user@example 不匹配?

缺少顶级域。规则要求域名后必须有一个点号加至少两位字母,例如 .com / .cn。

Q:支持中文邮箱吗?

当前规则仅支持 ASCII。中文国际化邮箱需要 punycode 编码后再校验。

Q:如何从一段文本中提取所有邮箱?

去掉 ^ 与 $,或把整条规则放进捕获组,然后在“提取”工作模式中选择该组。

Q:这条正则足够严格吗?

用于前端提示足够;涉及账号安全时,应以发送验证邮件的方式确认真实性。

相关场景

手机号正则

匹配中国大陆 11 位手机号:首位为 1,第二位 3-9,其余 9 位为数字。

立即测试

URL 正则

匹配以 http:// 或 https:// 开头、含主机名与可选路径/查询的网址。

立即测试

IPv4 正则

匹配标准点分十进制 IPv4,每段取值 0-255。

立即测试

IPv6 正则

匹配完整写法(8 段十六进制)的 IPv6 地址。

立即测试

身份证正则

匹配 18 位居民身份证号:前 6 位地区码、8 位出生日期、3 位顺序码与 1 位校验位(可为 X)。

立即测试

日期正则

匹配 YYYY-MM-DD 格式日期,月份 01-12、日 01-31。

立即测试

日期时间正则

匹配日期与时间组合,日期与时间之间用空格或 T 分隔,秒可省略。

立即测试

UUID 正则

匹配标准 8-4-4-4-12 分段的 UUID 字符串。

立即测试

中文正则

匹配常用汉字区间 U+4E00–U+9FA5 的中文字符。

立即测试

密码正则

8-20 位,且同时包含字母与数字,允许常见特殊符号。

立即测试

用户名正则

字母开头,总长 4-16 位,只含字母、数字与下划线。

立即测试