📌  相关文章
📜  javascript 电子邮件正则表达式 - Javascript (1)

📅  最后修改于: 2023-12-03 14:42:37.119000             🧑  作者: Mango

JavaScript 电子邮件正则表达式

在 Web 开发领域中,用于验证电子邮件地址的正则表达式特别常见。本文将重点讲解 JavaScript 中的电子邮件正则表达式。

正则表达式

正则表达式是一种用来匹配字符串的模式,常用于字符串搜索和替换,也可以用来验证输入的格式是否合法。

电子邮件正则表达式是一种特殊的正则表达式,它用来匹配电子邮件地址的格式是否合法。

电子邮件正则表达式

下面是一种可用于匹配电子邮件地址的 JavaScript 正则表达式:

/^\w+([.-]?\w+)*@\w+([.-]?\w+)*(\.\w{2,3})+$/

这个正则表达式的含义如下:

  • ^ 表示字符串的开始
  • \w+ 匹配一个或多个字母、数字或下划线(即用户名的一部分)
  • ([.-]?\w+)* 匹配一个或多个点、减号或下划线,并且后面跟着一个或多个字母、数字或下划线(即用户名的一部分)
  • @ 匹配一个电子邮件地址中的“at”符号
  • \w+ 匹配一个或多个字母、数字或下划线(即域名的一部分)
  • ([.-]?\w+)* 匹配一个或多个点、减号或下划线,并且后面跟着一个或多个字母、数字或下划线(即域名的一部分)
  • (\.\w{2,3})+ 匹配一个或多个顶级域名,例如“.com”或“.org”
  • $ 表示字符串的结尾
实际应用

使用电子邮件正则表达式需要注意的是,它只能验证电子邮件地址的格式是否正确,但不能验证邮件地址是否真实存在。因此,我们在编写表单验证时,除了验证电子邮件地址的格式是否正确外,还要采取其他措施,例如向邮箱发送确认链接等。

下面是一个示例代码片段,用于验证用户在表单中输入的电子邮件地址是否合法:

const emailInput = document.querySelector('#email');
const emailRegex = /^\w+([.-]?\w+)*@\w+([.-]?\w+)*(\.\w{2,3})+$/;

emailInput.addEventListener('input', () => {
  if (!emailRegex.test(emailInput.value)) {
    emailInput.setCustomValidity('请输入合法的电子邮件地址');
  } else {
    emailInput.setCustomValidity('');
  }
});
总结

本文介绍了 JavaScript 中的电子邮件正则表达式,该正则表达式可用于验证电子邮件地址的格式是否合法。在实际应用中,除了使用正则表达式验证电子邮件地址的格式外,还要采取其他措施来保证用户输入的电子邮件地址的有效性。