需修改邮箱正则表达式以支持连字符,适配含连字符的邮箱
适配含连字符邮箱的正则修改方案
很简单,只需要在正则的允许字符集中加入连字符 - 就能解决这个问题!
修改后的正则表达式:
/^tmail\.[a-z0-9\.-]+@track.com$/i
关键改动说明:
- 原正则里的
[a-z0-9\.]+仅支持小写字母、数字和点号,我们将其调整为[a-z0-9\.-]+,在字符集末尾添加了-(放在字符集末尾无需转义,不会被误判为范围符号) - 调整后,既能匹配原来的
tmail.something@track.com格式,也能正确识别tmail.ab-cd@track.com这类带连字符的邮箱 - 保留了
/i修饰符,所以依然支持大小写不敏感匹配(比如TMAIL.AB-CD@TRACK.COM也能被匹配)
测试验证:
- ✅ 匹配成功:
tmail.ab-cd@track.com、tmail.test-123@track.com、tmail.a-b.c-d@track.com - ❌ 匹配失败:
tmail.ab_cd@track.com(下划线不在允许范围内)、mail.ab-cd@track.com(前缀不符合tmail.开头要求)
内容的提问来源于stack exchange,提问作者Jinto John
相关产品推荐
相关产品推荐

