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

如何编写正则表达式匹配至少1个9开头后跟任意数量0的字符串

问题排查

你的正则失效的核心原因是缺少字符串结束锚点$:

  • 正则中的^仅限制字符串开头必须符合规则,没有$锚点的情况下,只要开头部分匹配规则,哪怕后续存在其他不符合要求的字符,也会判定为匹配成功。比如91的开头9符合规则,就会被你的正则判定为通过。
  • 补充说明:99*可以简化为等价的9+,都表示匹配1个及以上的连续9,写法更简洁易读。
正确正则实现
let regex = /^9+0*$/;

各部分规则说明:

  • ^:匹配字符串的起始位置
  • 9+:匹配1个及以上的连续9
  • 0*:匹配0个及以上的连续0
  • $:匹配字符串的结束位置,确保整个字符串完全符合前面的规则
校验效果
  • 合法用例全部通过:9、99、990、99990000000均匹配成功
  • 非法用例全部拦截:
    • 包含9/0以外字符的场景:991匹配失败
    • 0出现在两个9之间的场景:909、9900009均匹配失败

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 09:51:02