首页 > 解决方案 > 最大数字 100 的正则表达式,删除第二个点并将最大数字限制为 6

问题描述

我需要验证输入类型编号的值。我已经这样做了,但这很脏

const value = ev.target.value
if (value > 100 || (value.length === 2 && +value[0] === 0)) ev.target.value = value.slice(0, value.length - 1)

我需要以这种方式验证字段 12.3.3 无效 10.2 有效 100.2 无效

标签: javascriptregex

解决方案


^(\d{1}(?:\.\d{1,5})?|\d{2}(?:\.\d{1,4})?|100(?:\.0{1,3})?)$

...验证:

  • [0..100] 中的值
  • 单个数字后跟最多 5 个可选小数
  • 两位数字后跟最多 4 位可选小数
  • 100 后跟最多 3 个可选的 0

见:https ://regex101.com/r/PWseLS/1


推荐阅读