印度密码验证正则表达式 - 只有六位数字,不应该以“0”开头

时间:2015-11-23 07:17:06

标签: javascript regex validating

我已经尝试了Regex accept numeric only. First character can't be 0What is the regex for "Any positive integer, excluding 0",但是根据我的要求,这不起作用。

我想要准确的6位数字,但不应该以{{1​​}}

开头

我试过

0

需要微调。

3 个答案:

答案 0 :(得分:21)

^[1-9][0-9]{6}*$的问题是无效的正则表达式,因为{6}*^([^0][0-9]){6}$是允许任何不是{{1}的字符接下来是六个数字。

使用

0

<强>解释

  1. ^[1-9][0-9]{5}$ :以锚
  2. 开头
  3. ^:匹配1到9之间的一个数字
  4. [1-9]:匹配范围[0-9]{5}
  5. 中的五位数字
  6. 0-9:以锚点结束
  7. Regex Visualization

    Regex101 Playground

    HTML5演示:

    $
    input:invalid {
      color: red;
    }

答案 1 :(得分:0)

某些网站和银行有将密码分隔3位的习惯。 要同时匹配515411和515411,以下模式会有所帮助。

^[1-9]{1}[0-9]{2}\s{0,1}[0-9]{3}$
  • ^ [1-9] {1}-以数字1-9开头的PIN码
  • [0-9] {2}-接下来的两位数字范围可能是0-9
  • \ s {0,1}-只能发生一次或永远不会发生的空间
  • [0-9] {3} $-后3位必须是0-9之间的数字

答案 2 :(得分:0)

此正则表达式涵盖;

  1. PIN码不是从零开始

  2. 仅允许6位数字

  3. 允许连续6位数字(例如431602)

  4. 3位数字后允许1个空格(例如431602)

([1-9]{1}[0-9]{5}|[1-9]{1}[0-9]{3}\\s[0-9]{3})