想要为-20到150之间的任何整数生成正则表达式,包括最多2个小数 例如36.50 最大值150.00 和最小值-20.00
到目前为止已经尝试过了,但是也包括-20.78和150.04。 我想将其限制为150.00和-20.00
^((\-([1-9]|1[0-9]|20)(\.\d{2})?)|([0-9]|[1-8][0-9]|9[0-9]|100)(\.\d{2})?)$
你能帮我吗?
答案 0 :(得分:2)
我投票赞成仅使用不等式,以及简单的正则表达式检查来断言没有十进制成分要比hundreths更精确:
var input = "10.35";
if (input >= -20 && input <= 150 &&
/^-?\d+(?:\.\d{1,2})?$/.test(input)) {
console.log("MATCH");
}
答案 1 :(得分:0)
尝试一下, 而不是将其他所有内容都取20
^((\-([1-9]|1[0-9])(\.\d{2})?)|((\-(20)(\.(00))|([0-9]|[1-8][0-9]|9[0-9]|100)(\.\d{2})?)$