regex - 对于电子邮件地址,匹配域或域与子域?
问题描述
我正在尝试创建一个适用于电子邮件的正则表达式。我需要匹配一封电子邮件来自某个域或来自某个域和子域。域必须精确匹配。
我有这个:
@.*\.?somedomain\.com$
是的,这将匹配:
fdsafd@a1.somedomain.com
fdsafd@somedomain.com
fdsafd@aabbddjjj.somedomain.com
这就是我需要的。但是,它也是一个包含其中somedomain.com
一部分的域,这不是我想要的:
fdsafd@partsomedomain.com
我希望域somedomain.com
被精确匹配。
如何解决?
解决方案
我会匹配以下内容:
@(.*\.)?somedomain\.com$
somedomain
保证是一个完整的 DN 路径,而不是一个路径的一部分,因为它要么.
在可选组的结尾之后,要么在@
它之前。
推荐阅读
- sql - 获取 SQL 中基于标志的 ID 的唯一元素的差异
- jquery - 检查输入文本字段是否具有特定的数值并使用 jquery 更改选择的选定选项
- c - 有人可以解释一下这个声明中发生了什么吗?
- sql - 一列的 SQL AVG 值,其中另一列等于特定值
- unity3d - 如何在 Unity2D 中制作“3D 外观”面板?
- java - 在 Java 中使用 XGBoost
- javascript - 如何从下拉列表中获取选定的选项并与输入字段相乘
- amazon-s3 - 在 AWS EMR 上使用 pyspark
- hive - 查找带有撇号的单词
- python-3.x - 如何修改另一个字典中的字典值