Home  >  Article  >  Backend Development  >  “[a-zA-Z0-9_-]”为什么没有长度限制

“[a-zA-Z0-9_-]”为什么没有长度限制

PHPz
PHPzOriginal
2016-06-06 20:43:104601browse

“[a-zA-Z0-9_-]”没有长度限制是因为正则中没有匹配字符串首尾的“^”和“$”,所以相当于只匹配到了字符串中的“3@gmail.com”部分,解决办法就是需要匹配完整的email字符串。

“[a-zA-Z0-9_-]”为什么没有长度限制

“[a-zA-Z0-9_-]”为什么没有长度限制?

具体问题:

正则表达式,([a-z][A-Z][0-9])代表三个字符,但是([a-zA-Z0-9_-])为什么没有长度的限制? abc可以,abcdef也可以?

企业微信截图_15924488902275.png

回答:

原po图片中

用了/[a-zA-Z0-9]@gmail\.com/i去匹配2abcDEF123@gmail.com

由于正则中没有匹配字符串首尾的^和$

所以相当于:只匹配到了字符串中的3@gmail.com部分

匹配完整的email字符串的正则:

/^[a-z0-9_-]+@[a-z0-9_-]+\.[a-z]+$/i

更多相关技术文章,请访问PHP中文网

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn