我必须验证用户名,要求如下:
有人知道这个的正则表达式吗?
答案 0 :(得分:3)
由于你没有表现出太多的努力试图解决这个问题,我也不会这样做。但是,为了给你一个开头,我将为你提供一个正则表达式,它将帮助你构建你想要的正则表达式:
[a-z\.\-\_]{8,20}
在这里你可以看到:
[ ]
- 一个字符类:其中的任何字符都可以匹配
{ }
- 量词:长度在8到20个字符之间
a-z
- 范围从a
到z
的所有字符
\.
- 匹配文字点
\-
- 匹配文字连字符
_
- 匹配文字下划线
但是,这个正则表达式是错误的:例如,也接受由8个(或更多)点组成的用户名:.........
,只有符号的组合,没有字母:-_-__-_._-
。我相信这不是预期的行为。
您可以在此处查看演示:regex101.com