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

正则写法:数字含小数点时必须带小数 整数最多9位小数最多6位

数字输入框内容合法性校验正则方案

核心校验规则

  • 数字整数部分最多支持9位
  • 若输入内容包含小数点,小数点后必须存在有效数字,且小数部分最多支持6位
  • 适配用户键入、内容粘贴两类输入场景的实时校验

原有正则缺陷

原有正则/^(\d{0,9})(\.{0,1}\d{0,6})*$/存在两处逻辑漏洞:

  • 对小数分组加了*重复匹配量词,可能出现多小数点的异常匹配
  • 小数部分数字匹配规则用了{0,6}允许0位数字,会直接放行123456789.这类小数点后无内容的非法格式

正确正则写法

/^\d{1,9}(\.\d{1,6})?$/

正则逻辑拆解

  • ^、$:从字符串开头到结尾做全量匹配,避免部分匹配漏过非法字符
  • \d{1,9}:匹配1-9位整数,从长度上限制整数部分不超9位,同时不允许无整数段的点开头格式
  • (\.\d{1,6})?:小数部分为可选匹配段:要么完全不输入小数点,要么输入小数点后必须跟随1-6位数字,直接杜绝小数点后无内容、小数位超长、多小数点的问题

匹配效果示例

合法匹配(放行)

  • 123456789.123456
  • 1
  • 999999999
  • 0.123456

非法匹配(拦截)

  • 1234567890.1234567:整数位超9位、小数位超6位
  • 123456789.:小数点后无有效小数内容
  • 123.1234567:小数位超6位
  • 1234567890:整数位超9位
  • 12.34.56:存在多个小数点

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 10:24:13