如何修改邮箱正则表达式以禁止匹配以.co结尾的邮箱地址
邮箱正则修改方案
你需要的修改后正则表达式如下:
^(?=[\w\s])\s*[-+.'\w]+@[-.\w]+\.(?!co\s*$)[-.\w]{2,}\s*$
修改说明
仅在原有正则的基础上新增了一处负向先行断言(?!co\s*$),放置在域名后缀的.匹配之后,实现的逻辑如下:
- 当
.后紧跟co,且co之后只有可选空白就到字符串末尾时,断言匹配失败,整段邮箱地址不会被校验通过,完美拦截john@gmail.co这类错误地址 - 当
.后是co但还有其他后缀内容(比如co.uk、co.jp)时,断言不会触发,原有校验规则正常生效,符合你的使用需求
测试验证
你可以用以下场景验证规则正确性:
- 校验通过的合法地址:
john@example.co.uk、admin@company.com、user@test.org.cn - 校验不通过的非法地址:
tom@gmail.co、lisa@abc.co(末尾带空格的co后缀地址)
内容的提问来源于stack exchange,提问作者Adam
相关产品推荐
相关产品推荐

