2016-02-27 91 views
-2

我发现这个正则表达式是一个电子邮件验证,但我不明白是什么意思,我试图输入多种形式的电子邮件,但他们没有工作,我认为这个正则表达式有问题。这个正则表达式的含义是什么?

^[A-Z0-9] [A-Z0-9._%+ - ] {0,63} @(α:[A-Z0-9] {1,63}。){1,125 } [AZ] {2,63} $

任何人都可以解释什么是正则表达式的意思,并举例说明它。

在此先感谢。

+0

有没有你不明白的特定部分?如果不是这样,这个问题太过于宽泛。 –

+1

[regex101](https://regex101.com/)是你的朋友。无论如何,这只是另一种检查(某种)有效的电子邮件地址。 –

+0

这绝对看起来是错误的,因为电子邮件不应该是'63'或'125'字符的一大串。 – 2016-02-27 13:28:49

回答

0

要启动的一个很好的解释,所有的A-Z(只有大写字母)可能是a-zA-Z

^&是输入的开始和结束。

[A-Z0-9][A-Z0-9._%+-]{0,63}

然后它看起来为0和双字符,其中第一个是一个大写字母或数字的63之间的任何数,并且所述第二任何thse的:AZ,0-9, _,%,+, - 。

@(?:[A-Z0-9]{1,63}.){1,125}

之后,它查找随后用1至125设置包含1 AZ或0-9之间和36倍,比任何字符的字符的字符@.大概意思是\.) 。

[A-Z]{2,63}

在它看起来为A-Z之间的字符2到63倍的端部。

[email protected]”应该适用于该正则表达式。这真的很难说,所以我希望它有道理......我会用^[a-zA-Z0-9._%+-]{1,63}@([a-zA-Z0-9]{1,53}\.){1,125}[a-zA-Z]{2,63}$来代替。

+0

非常感谢,很好的解释和例子的作品 –

0

您使用Php吗? 我会用这个命令代替

filter_var('[email protected]', FILTER_VALIDATE_EMAIL); 

但是,您提供的正则表达式必须满足上的电子邮件看起来如何

第一个字符必须是字母数字有一定要求。

没有适用于本正则表达式的选项,这样,它会要求邮件可以用大写的

相关问题