Php 用于用户登录验证的正则表达式
我试图使用正则表达式检查用户名是否有效。要使用户名有效,其长度必须介于2到10个字符之间。它必须以小写字母开头,并且只能由小写字母、大写字母或数字组成 这是我到目前为止所拥有的Php 用于用户登录验证的正则表达式,php,regex,Php,Regex,我试图使用正则表达式检查用户名是否有效。要使用户名有效,其长度必须介于2到10个字符之间。它必须以小写字母开头,并且只能由小写字母、大写字母或数字组成 这是我到目前为止所拥有的 return preg_match("/^[a-z]([a-zA-Z0-9]{2,10})$/", $name); 为了保持一致性,您的捕获表达式应该包含您的整个用户名(在您的情况下,您将跳过第一个字母)。您还注意到,您只需要在下半部分使用{1,9}: ^([a-z]{1}[a-zA-Z\d]{1,9})$ 这是匹
return preg_match("/^[a-z]([a-zA-Z0-9]{2,10})$/", $name);
为了保持一致性,您的捕获表达式应该包含您的整个用户名(在您的情况下,您将跳过第一个字母)。您还注意到,您只需要在下半部分使用
{1,9}
:
^([a-z]{1}[a-zA-Z\d]{1,9})$
- 这是匹配一个小写字母开始,然后是1到9个
s,并捕获整个用户名a-zA-Z0-9
mg
(多行,全部匹配[当使用多行块进行测试时])
演示:可能应该是
{1,9}
,因为您已经使用了第一个字母。很抱歉,3和8是我弄乱的旧值,我打算做2和10,我将尝试1和9,但您必须小心,因为此表达式将匹配名称“悉达多”中的“iddhartha”。你需要匹配整个单词,也许试着在名字前后留出一个空格?嘿,谢谢!!!更改边界是使其正常工作所需的全部。请查看此修改后的示例: