我想在PHP中使用正则表达式验证Skype的名称。
注意:必须介于6-32个字符之间,以字母开头,仅包含字母和数字(不能包含空格或特殊字符)。
答案 0 :(得分:16)
此模式适用于您:
[a-zA-Z][a-zA-Z0-9\.,\-_]{5,31}
这将匹配一个前导字母,后跟任何字母 - 数字组合,最多总共6到32个字符(对于整个字符串)。
您可以在PHP中使用它:
if (preg_match('/^[a-z][a-z0-9\.,\-_]{5,31}$/i', $name)) {
// you have a valid name!
}
注意,在preg_match()
中,我添加了i
正则表达式选项来忽略大小写。另外,我使用^
引导模式以表示模式必须从字符串的开头开始,然后以$
结束以表示模式必须完成字符串的 end 。
答案 1 :(得分:0)
这将完成这项工作:
preg_match( '~^[a-z][a-z0-9]{5,31}$~i', $text)