已关闭,该问题需要details or clarity,目前不接受回答。
**想要改进此问题?**通过editing this post添加详细信息并澄清问题。
14小时前关闭
Improve this question
谁能解释一下下面的验证规则是如何工作的?
^([\w\-\.]+)@((\[([0-9]{1,3}\.){3}[0-9]{1,3}\])|(([\w\-]+\.)+)([a-zA-Z]{2,5}))$
如何理解验证规则。
已关闭,该问题需要details or clarity,目前不接受回答。
**想要改进此问题?**通过editing this post添加详细信息并澄清问题。
14小时前关闭
Improve this question
谁能解释一下下面的验证规则是如何工作的?
^([\w\-\.]+)@((\[([0-9]{1,3}\.){3}[0-9]{1,3}\])|(([\w\-]+\.)+)([a-zA-Z]{2,5}))$
如何理解验证规则。
2条答案
按热度按时间ssm49v7z1#
是的,但是在研究了所有的正则表达式文档资源之后,我得到了一些对你有帮助的信息;您提供的验证规则是一个正则表达式,可用于验证电子邮件地址。以下是其工作原理的说明:
^([\w-.]+)@(([([0-9]{1,3}.){3}[0-9]{1,3}])|(([\w-]+.)+)([a-zA-Z]{2,5}))$
正则表达式开头的
^
字符匹配字符串的开头。([\w-.]+)
匹配一个或多个单词字符、连字符或点,它们表示电子邮件地址的用户名部分。@
匹配用于分隔用户名和域名的@
字符。正则表达式的其余部分用于匹配域名,域名可以是IP地址或域名。
(([([0-9]{1,3}.){3}[0-9]{1,3}])|(([\w-]+.)+)([a-zA-Z]{2,5}))
匹配IP地址或域名:([0-9]{1,3}.){3}[0-9]{1,3}
匹配www.example.com形式的IP地址xxx.xxx.xxx.xxx,其中xxx是0到255之间的数字。([\w-]+.)+
匹配一组或多组一个或多个单词字符或连字符,后跟一个点,表示一个子域。[a-zA-Z]{2,5}
匹配由2到5个字母组成的顶级域。$
匹配字符串的结尾。因此,正则表达式匹配www.example.com形式的电子邮件地址username@domain.com,其中域可以是IP地址或域名。
zyfwsgd62#
总的来说,@Abhisha Kumar的答案是正确的,但是有几个事实错误,所以让我纠正一下。
此正则表达式尝试验证电子邮件。
在
@
之后,允许使用格式为[xxx.xxx.xxx.xxx]
的IP地址,但此正则表达式将匹配[555.555.555.555]
,这不是有效的IP地址。另一方面,这个正则表达式对地址的局部部分有很大的限制,禁止使用大多数特殊符号和引号。
阅读更多关于允许的电子邮件地址,你可以阅读here。