今天我花了大约六个小时的时间来研究正则表达式。对于我的一生,我无法弄清楚。我已经尝试了大约一百种不同的方法,但都无济于事。非常感谢任何帮助!
基本规则:
1 - 排除地址部分中的这些字符(@ 符号之前):"()<>@,;:\[]*&^%$#!{}/"
2 - 地址可以包含“.”,但不能连续两个。
对于第一条规则,我有一个优雅的解决方案,但是第二条规则却要了我的命!这是我到目前为止所拥有的。 (为了简单起见,我只包含 @ 符号之前的部分)。另外,值得注意的是,这个正则表达式正在 JavaScript 中使用,因此不允许使用条件 IF。
/^[^()<>@,;:\\[\]*&^%$#!{}//]+$/
最佳答案
首先,我建议您始终选择您想要允许的字符,而不是相反,您永远不知道您可能会错过哪些危险字符。
其次,这是我经常用于验证电子邮件的正则表达式,并且效果非常好。希望对您有所帮助。
/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,6}$/i
关于javascript - 电子邮件正则表达式 - 排除指定集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7018557/