val = val.replace(/[^0-9]/g, '')
val是输出值
想做一个能输0,但是不能输01 02 0445 0005 这样的数字要怎么做呢?
想要的是实现替换不是正则判断this.$set(this.formData.list[i], name, val.replace(/[^0-9]/g, '')) // 只允许输入数字
如果是输入01 去掉前面的0,如果只是0可以输入
val = val.replace(/[^0-9]/g, '')
val是输出值
想做一个能输0,但是不能输01 02 0445 0005 这样的数字要怎么做呢?
想要的是实现替换不是正则判断this.$set(this.formData.list[i], name, val.replace(/[^0-9]/g, '')) // 只允许输入数字
如果是输入01 去掉前面的0,如果只是0可以输入
结合StephenTian 提供的正则式判断,就可以让每次输入后检查是否符合,如果不符合,回退到前次输入不更新,符合才接受输入情况。
//整数:
zsRE=/(^[1-9]\d*$|^\d$)/
//带小数点:
xsRE=/^([1-9]\d*|0)(\.\d*[1-9])?$/
最后找到办法了,先限制只能输入0-9的数字然后获取数据,转数组,length>1 的执行循环,如果角标为0 的数据为0 那就去掉,然后拼接成数字
最推荐的办法是上面大神的:
// this.$set(this.formData.list[i], name, val.replace(/[^0-9]/g, '')) // 只允许输入数字
this.$set(this.formData.list[i], name, val.replace(/0*(\d+)/, '$1')) // 只允许输入数字和0,并且不能输入00 01 02,
13 回答12.7k 阅读
7 回答1.8k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
6 回答775 阅读✓ 已解决
2 回答1.9k 阅读
6 回答1k 阅读
整数:
/(^[1-9]\d*$|^\d$)/
小数可以输入吗?
带小数点:
/^([1-9]\d*|0)(\.\d*[1-9])?$/
如果需要替换的话:
不替换 0:
replace(/0*(\d+)/,"$1")