以下是我的正则表达式模式。我用它来验证电子邮件地址。
^[\\w]+(\\.|\\_)?[\\w]+\\@{1}[\\w]+\\.{1}(([A-Za-z]+)|(\\.{1}[A-Za-z]+))$
电子邮件ID必须遵循以下规则 1.在1个句点或下划线之前包含任意数量的字母或数字 2.在1 @之前跟随任意数量的字母或数字 3.在1个时期之前跟随任意数量的字母或数字 4.(后跟任意数量的字母)或(1个句点和任意数量的字母)。
我正面临第四条规则的问题。它适用于以@ xyz.abc结尾的电子邮件ID,但对@ xyz.abc.ab
失败是不是可以像我一样对第四条规则进行分组?
解决方案:
"^[A-Za-z0-9]+[\\._][A-Za-z0-9]+@[A-Za-z0-9]+(?:\\.[A-Za-z]+){1,2}$"
答案 0 :(得分:2)
根据您的描述,您想要的实际上是:
^[A-Za-z0-9]+[\\._][A-Za-z0-9]+@[A-Za-z0-9]+(?:\\.[A-Za-z]+)+$
分裂出来,你有:
[A-Za-z0-9]+
)[\\._]
)[A-Za-z0-9]+
)@
)[A-Za-z0-9]+
)(?:\\.[A-Za-z]+)+
)请注意,\\w
包含_,因此您无法在此处使用它。
答案 1 :(得分:1)
使用此:
^[\\w]+(\\.|\\_)?[\\w]+\\@{1}[\\w]+(\\.{1}[\\w]+)+$
我还应该指出,电子邮件的实际正则表达式非常复杂。我希望你不要在网站上进行任何真正的检查。