首页 > 解决方案 > 小数正则表达式,其中小数点后只有一位

问题描述

如何更新我的表达式以只允许小数点后十位

    <form:input path="mark" oninput="this.value = this.value.replace(/[^0-9\.]/g, '')

像预期的输入

1.2   12456.5  565.5  45 458

标签: regex

解决方案


你可以使用toFixed()

var number = 1.2345
console.log(number.toFixed(1))

或者,如果您真的想要正则表达式,则可以使用以下方法。它匹配任意数量的数字,后跟一个小数,然后是另一个数字,然后捕获之后的任何数字。

var regex = /(\d+\.\d)(\d+)/
var one = "1.25"
var two = "1.2"
var three = "1"
var four = "12.25435345"
console.log(one.replace(regex, '$1'))
console.log(two.replace(regex, '$1'))
console.log(three.replace(regex, '$1'))
console.log(four.replace(regex, '$1'))


推荐阅读