You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript正则匹配特定规则5位数字的问题求助

5位数字匹配正则优化方案

直接给你修改后的正则表达式:

const regex = /^(?!(\d)\1{4})[1-46-9]\d{4}$/;

规则拆解

  • ^(?!(\d)\1{4}):保留你原来的负向前瞻逻辑,用来排除5位全重复的数字(比如11111这类所有位都相同的情况)
  • [1-46-9]:指定首字符的允许范围,直接覆盖1-4和6-9,完美排除首字符为5的情况
  • \d{4}:匹配剩余的4位任意数字
  • $:确保字符串刚好到第5位结束,避免匹配到超过5位的数字(比如899991这类6位数字)

示例验证

符合匹配规则的:

  • 12345:首字符在允许范围,且不全重复
  • 22220:首字符在允许范围,最后一位不同,不属于全重复
  • 90279:首字符在允许范围,不全重复

不符合匹配规则的:

  • 11111:被负向前瞻排除(全重复)
  • 59876:首字符为5,不在允许范围
  • 899991:长度超过5位,被$限制排除

内容的提问来源于stack exchange,提问作者MrWalterWhite

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 09:37:44