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

如何调整正则表达式以匹配开头无整数部分的有效浮点数?

解决浮点数正则匹配问题

你可以使用这个正则表达式来满足需求:

/^(?:[0-9]{1,10}(\.\d{0,3})?|\.\d{1,3})$/

正则说明

  • ^ 和 $ 锚定字符串首尾,确保整个输入被校验,避免部分匹配
  • (?:...) 是非捕获分组,用来包含两种合法的格式分支:
    1. [0-9]{1,10}(\.\d{0,3})?:这是你原有正则的逻辑,匹配1-10位整数开头,后面可跟小数点+0-3位小数(支持0、0.、0.123这类格式)
    2. \.\d{1,3}:匹配以小数点开头,后面跟1-3位小数的格式(支持.1、.12、.123这类你需要的输入)

额外调整(如果需要支持单独的.)

如果也需要像0.一样允许单独的.作为合法输入,可以把正则改成:

/^(?:[0-9]{1,10}(\.\d{0,3})?|\.\d{0,3})$/

这个版本会额外匹配单独的.,同时保留所有原有合法格式和你需要的新格式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 17:34:57