javascript - RegEx 验证姓名和电子邮件
问题描述
我想使用可以处理两种模式的名称来验证电子邮件格式
有效的
test@domain.com
test user <test@domain.com>
test user<test@domain.com>
"test user" <test@domain.com>
"test user"<test@domain.com>
无效的
"test user" <test@domain.com
"test user" test@domain.com>
test user <test@domain.com
test user test@domain.com>
"test user <test@domain.com>
test user" <test@domain.com>
"test user" test@domain.com
这是我的进展: https ://regex101.com/r/Q00McL/1
解决方案
为什么物品4. "test user" test@domain.com (valid)
和7. "test user" test@domain.com (invalid)
一样?
如果您想"test user" test@domain.com
有效,请使用此模式:
^(?:(?:"[^"\r\n]+"|\w+(?: +\w+)*) *)?\w+@[^<>\s@]+\.\w{2,3}$
相反,如果"test user" test@domain.com
应该是无效的使用:
^(?:(?:"[^"\r\n]+"|\w+(?: +\w+)*)*)?\w+@[^<>\s@]+\.\w{2,3}$
推荐阅读
- c# - 将自定义按钮背景/边框绑定到自定义属性
- angular - Angular 9.0.4,子模块中找不到异步管道(git repo)
- c# - AutoMapper:多对多关系映射
- spring-boot - Spring Boot How to run multiple method with @Scheduled
- python - ValueError:检查输入时出错:预期 simple_rnn_1_input 具有 3 个维度,但得到的数组具有形状 (32、813、701、3)
- mysql - INNER JOIN 创建重复的主键错误,但它不应该
- html - 链接到不同页面时如何使名称ancor标签偏移?
- reactjs - 如何在 Formik 中创建连接/依赖的选择元素?
- mongodb - Mongos 实例无法连接到配置服务器副本集
- powershell - PowerShell:获取给定子键名称和值的注册表键名称