input 输入框数字框正则

input 输入框只能输入正数,保留小数点后两位,禁止输入 00之类的

/**
 * 只能输入数字 \保留小数点后两位
 * @param e
 * @returns {*}
 */
const numUtil = (e) => {
	let value = e
	value = value.replace(/^0+/, "0"); // 将0+替换成0
	value = value.replace(/^0[1-9]/, value.replace(/^0/,'')); //首个数字为0后续不为0去掉头部的0
	value = value.replace(/[^\d.]/g, ""); //清除"数字"和"."以外的字符
	value = value.replace(/^\./g, ""); //验证第一个字符是数字
	value = value.replace(/\.{2,}/g, "."); //只保留第一个, 清除多余的
	value = value.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
	value = value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); //只能输入两个小数
	return value
}

posted @ 2023-11-15 09:44  snail-2018  阅读(133)  评论(0)    收藏  举报