3种在JavaScript中验证电子邮件地址的方法
来源 | http://www.fly63.com/
如何使用JavaScript验证email的正确性?今天这个内容将做一个小小的总结,希望对你有所帮助。
方式一:简单验证
对于想要以以下形式进行真正简单验证的人
fly63@email.com
正则表达式:
/\S+@\S+\.\S+/
要防止匹配多个@ 符号(推荐使用):
/^[^\s@]+@[^\s@]+\.[^\s@]+$/
JavaScript 函数示例:
function validateEmail(email) {var re = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;return re.test(email);
}
console.log(validateEmail(fly63@email.com'));
这样能保证用户输入的邮箱没有明显的错误,绝大部分是正确的,而且效率是最高的。
方式二:官网标准
官方标准称为RFC 2822。它描述了有效电子邮件地址必须遵守的语法。使用这个正则表达式来实现它:
(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])
如果我们省略使用双引号和方括号的语法,我们将获得更实用的 RFC 2822 实现。它仍然会匹配今天实际使用的所有电子邮件地址的 99.99%。
[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?
方式三:html5表单验证
html5 本身具有电子邮件验证功能。如果您的浏览器支持 HTML5,那么您可以使用以下代码。
<form><input type="email" placeholder="me@example.com" required><input type="submit">
</form>
只需检查输入的电子邮件地址是否有效或不使用 HTML,无需编写用于验证的函数。
需要注意的是:存在浏览器兼容性。
学习更多技能
请点击下方公众号
3种在JavaScript中验证电子邮件地址的方法相关推荐
- 如何在JavaScript中验证电子邮件地址
如何在JavaScript中验证电子邮件地址? #1楼 与squirtle相比 ,这是一个复杂的解决方案,但是在正确验证电子邮件方面做得非常出色: function isEmail(email) { ...
- php验证电子邮件,如何在PHP中验证电子邮件地址
冉冉说 检查电子邮件地址是否格式良好的最简单和最安全的方法是使用filter_var()职能:if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { // ...
- outlook邮箱发送邮件时出错,报告错误(0x800ccc78)“无法发送此邮件。请在账户属性中验证电子邮件地址”,解决方法...
转载于:https://my.oschina.net/dapsjj/blog/804262
- javascript控制台_超越控制台日志3种在javascript中格式化控制台输出的方法
javascript控制台 As JavaScript developers, we intuitively use console.log() to debug, print out variabl ...
- 我应该如何验证电子邮件地址?
本文翻译自:How should I validate an e-mail address? What's a good technique for validating an e-mail addr ...
- 如何快速验证电子邮件地址?
本文翻译自:How to validate an e-mail address in swift? Does anyone know how to validate an e-mail address ...
- html5验证电子邮件地址,大家都知道如何吗?
一个新值类型属性是电子邮件.使用这种类型的字段而不是一般的文本字段浏览器使用正则表达式来检查用户已经事实上输入一个电子邮件地址.这是否意味着用户不能输入一个虚假的电子邮件地址吗?没有.但你不必担心用户 ...
- POSIX正则表达式 验证电子邮件地址
我们最经常遇到的验证,就是电子邮件地址验证.网站上常见.各种网页脚本也都常用"正则表达式"(regular expression)对我们输入的电子邮件地址进行验证,判断是否合法.有 ...
- 如何使用正则表达式验证电子邮件地址
电子邮件正则表达式模式 ^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$ ...
最新文章
- 读完ACL 2019录取的30篇知识图谱论文,我发现了这5点趋势
- The following packages will be SUPERCEDED by a higher-priority channel
- Android模拟器emulator-arm.exe出现错误
- python set使用
- VTK:隐式选择循环用法实战
- 【经验】Qt项目开发必备工具
- python求超级素数代码_C语言求超级素数
- pyqt label上的图片旋转_python中tkinter入门之config、Scale、Canvas和导入图片
- 如何在C++中嵌入JAVA程序
- HIT Software Construction Review Notes(0-1 Introduction to the Course)
- POJ 2104 K-th Number (区间第k大)
- Oracle SQL脚本批量导入导出
- LaTeX公式编辑器+mathtype6.9b
- 如何用ABBYY FineReader提取图片中的文字
- 某校2019专硕编程题-前10名学生成绩
- Windows压缩指定文件并删除原文件内容bat脚本
- akshare sma策略
- 掷骰子java程序_掷骰子游戏窗体实现--Java初级小项目
- 1024-开启人工智能学习之旅
- reg51.h、intrins.h这源文件