如何使用正则表达式验证0到99999.99之间的数字?
基本上它应该接受像0.01, 0000.01, .01 and 9999.99
它也应该只有two values after dot(.)
我尝试了类似下面的内容,但它对我不起作用。
/^[0-9]{1,5}.[0-9]{2}$/
decimal is optional
有人可以帮忙吗。
答案 0 :(得分:2)
.
字符在正则表达式中具有特殊含义,因此您需要将其转义。
无论如何,让我看看我是否直接遵守规则:
由于位数取决于是否存在小数点,因此正则表达式有两个选项,由|
分隔。
选择1(无小数点):[0-9]{1,5}
选择2(小数点):[0-9]{0,5}\.[0-9]{1,2}
由于您需要锚点(^$
),您可以将它们放在两个选项中,或者用括号括起选择集。要使其不可捕获,请使用(?:xxx)
。
最终的正则表达式就是其中之一:
/^[0-9]{1,5}$|^[0-9]{0,5}\.[0-9]{1,2}$/
/^(?:[0-9]{1,5}|[0-9]{0,5}\.[0-9]{1,2})$/
您可以在regex101上看到第二个有效。
答案 1 :(得分:0)
答案 2 :(得分:0)
如果javascript然后在正则表达式下工作:
gulp-imagemin: Minified 1 image (saved 0 B - 0%)
所有上述案例都令人满意。
答案 3 :(得分:0)
谢谢你,$('.dropdownSelectopt').hide();
$('.dropdownSelectopt li').each(function(){
$(this).click(function(){
value = $(this).html();
cl = $(this).parents().find('.route').html(value);
console.log(cl +'test');
});
});
$('.dropdownSelect').click(function(){
$('.dropdownSelectopt').toggle();
});
正是我想要的,这符合我的目的。