前端知识点---用正则表达式判断邮箱(javascript)

复制代码
// 全面的正则(兼容大多数情况)
const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;

// 或直接使用浏览器内置验证
<input type="email" required>
  • /:正则表达式的起始和结束标志。

  • ^:匹配字符串的开头。

  • a-zA-Z0-9._%±+:匹配电子邮件地址的本地部分(@符号之前)。

  • a-zA-Z0-9:字母(大小写)和数字。

  • .%±:允许的特殊字符(.、、%、+、-)。

  • +:表示前面的字符可以重复1次或多次。

  • @:匹配邮箱地址中的 @ 符号。

  • a-zA-Z0-9.-+:匹配邮箱的域名部分。

  • .:可以包含的点(如 example.com)。

  • -:支持带有连字符的域名(如 my-domain.com)。

  • .:转义的点,用于匹配域名中的 .。

  • a-zA-Z{2,}:匹配顶级域名(TLD),例如 com、org、net。

  • {2,}:表示至少2个字母,例如 cn、us、info 等。

  • $:匹配字符串的结尾,确保邮箱格式完整。

✅ 示例匹配的邮箱:

user@example.com

my.email123@domain.co.uk

name+alias@mail-provider.org

❌ 示例不匹配的邮箱:

user@com(TLD 不符合规则)

user@.com(域名不完整)

user@domain,com(不允许逗号)

user@domain...com(连续的点不合法)

这段正则表达式在邮箱验证中非常常用,能过滤大部分无效邮箱地址。

相关推荐
Patrick在香港3 小时前
Python正则表达式实战:解析和验证香港身份证、车牌、电话格式
开发语言·python·正则表达式
吴声子夜歌2 天前
正则指引——Ruby
开发语言·正则表达式·ruby
吴声子夜歌2 天前
正则指引——Golang
开发语言·golang·正则表达式
吴声子夜歌3 天前
正则指引——PHP
开发语言·正则表达式·php
吴声子夜歌5 天前
正则指引——断言
正则表达式
吴声子夜歌5 天前
正则指引——匹配原理
java·正则表达式
吴声子夜歌6 天前
正则表达式——环视
开发语言·正则表达式
吴声子夜歌7 天前
正则表达式——边界
正则表达式
营养充电站7 天前
C++23 新特性在 CLion 中的实战体验
macos·docker·jupyter·正则表达式