我有正则表达式 ^ [a-zA-Z0-9] {0,14} $ 这将只允许字母数字。 但有问题我不希望用户名只是数字,这个正则表达式也只接受数字 像56426542 所以如何仅限制数字
答案 0 :(得分:1)
TIMTOWTDI
最简单的解决方案是要求用户名以字母
开头 ^[A-Za-z][A-Za-z0-9]{0,14}
请记住{0,14}接受空字符串作为有效输入
修改强>
前面的表达式接受1到15个字符的输入,更好的解决方案是:^[A-Za-z][A-Za-z0-9]{0,13}
但Grommer解决方案更好
答案 1 :(得分:1)
你想要的正则表达式:
^((?=.*[a-zA-Z])[a-zA-Z0-9]{0,14})$
Regex sandbox to play in with it.
这不会强迫你必须以字母开头。用户名可以以字母或数字开头,确保用户名不是仅数字。
编辑:修复了长度检查。此外,您可能希望将{0,14}更改为{1,14}。好吧,用最小长度要求替换第一个数字。