我已经尝试了Regex accept numeric only. First character can't be 0和What is the regex for "Any positive integer, excluding 0",但是根据我的要求,这不起作用。
我想要准确的6位数字,但不应该以{{1}}
开头我试过
0
需要微调。
答案 0 :(得分:21)
^[1-9][0-9]{6}*$
的问题是无效的正则表达式,因为{6}*
和^([^0][0-9]){6}$
是允许任何不是{{1}的字符接下来是六个数字。
使用
0
<强>解释强>
^[1-9][0-9]{5}$
:以锚^
:匹配1到9之间的一个数字[1-9]
:匹配范围[0-9]{5}
0-9
:以锚点结束HTML5演示:
$
input:invalid {
color: red;
}
答案 1 :(得分:0)
某些网站和银行有将密码分隔3位的习惯。 要同时匹配515411和515411,以下模式会有所帮助。
^[1-9]{1}[0-9]{2}\s{0,1}[0-9]{3}$
答案 2 :(得分:0)
此正则表达式涵盖;
PIN码不是从零开始
仅允许6位数字
允许连续6位数字(例如431602)
3位数字后允许1个空格(例如431602)
([1-9]{1}[0-9]{5}|[1-9]{1}[0-9]{3}\\s[0-9]{3})