我需要用户在输入中仅输入2位数字和3个十进制值。我确实有使用正则表达式的代码来测试逻辑,但不适用于regex.replace()
请帮助我使用正则表达式替换将不匹配的字符替换为空白。
我只用数字尝试过,它与keyup事件一起使用。但不能使用十进制。”
$(document).on('keyup','.numbersOnly', function() {
this.value = this.value.replace(/[^0-9\.]/g,'');
});
$(document).on('keyup','#inputBox', function() {
var regex = /[^\d{1,2}(\.\d{1,3})?$]/g;
this.value = this.value.replace(regex,'');
});
如果用户输入100,则最后一个零需要用正则表达式中的''代替。
如果用户输入4.1235,则正则表达式中的最后一个小数(5)需替换为“”。
答案 0 :(得分:0)
您使用的正则表达式不正确。 []
及其之间的字符用于匹配单个字符。 [^\d.]
与数字和点以外的任何单个字符匹配。