<input bindinput="moneyInput" type='digit' maxlength='10' value="{{money}}"/>
moneyInput(e) {
let price = e.detail.value;
price = price.replace(/[^\d.]/g, ""); //清除“数字”和“.”以外的字符
price = price.replace(/\.{2,}/g, "."); //只保留第一个. 清除多余的
price = price.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
price = price.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); //只能输入两个小数
// 去除整数前的0和小数点后多余的0,如011.020300 =》 11.0203
const reg1 = /0*([1-9]\d*|0\.\d+)/;
const reg2 = /(?:\.0*|(\.\d+?)0+)$/;
price = price.replace(reg1, '$1').replace(reg2, '$1');
this.setData({
price
})
},