javascript - JavaScript 中的正则表达式恰好有 6 位数字且至少有两个不同的数字

标签 javascript regex

我想确保我有 6 位数字,并且并非所有数字都相同(222222 Not Acceptable ,但 122222 或 211111 或 122223 可接受)。

我正在使用this :

    ^(?=\d{6})(\d)\1*(?!\1)\d+$

但这仅满足 minimum 6 位数字而不是 exactly 6 位数字。

(来源:Regex to match number with different digits and minimum length)

最佳答案

您可以使用这个简化且更高效的正则表达式:

^(\d)(?!\1+$)\d{5}$

RegEx Demo

正则表达式详细信息:

  • ^(\d):匹配并捕获开头的数字
  • (?!\1+$):负向前瞻断言相同的数字在结束之前不会重复。
  • \d{5}$:在末尾添加 5 位数字

关于javascript - JavaScript 中的正则表达式恰好有 6 位数字且至少有两个不同的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60782776/

相关文章:

javascript - 使用 jquery 或 JS 从现有值集中过滤结果

javascript - 创建自定义 LLVM Frontned (VBS >> JS)

javascript - 遍历 li 元素,检查类并设置 css

mysql - 在 mysql 中再次匹配长字符串(完整邮政编码)和短字符串(邮政编码开头)

ruby - 使用 Nokogiri 进行正则表达式解析

javascript - 使用 Angular 进行 Firebase 身份验证

javascript - 查找目录的内容

regex - 从正则表达式中提取捕获组匹配? (或 : where is gregexec? )

regex - 研究(): (\d+) matches only a single digit

python - 条件如果字符串仅包含变量和整数Python