js 正则校验 0.01~9999999范围内的数字,小数点后最多两位
时间: 2023-05-18 17:03:51 浏览: 97
可以使用以下正则表达式进行校验:
/^(0|[1-9]\d{0,6})(\.\d{1,2})?$/
解释一下:
^ 表示匹配字符串的开头
(0|[1-9]\d{0,6}) 表示匹配 0 或者 1-9999999 的数字,其中 [1-9]\d{0,6} 表示匹配 1-9 开头的 1-7 位数字,\d{0,6} 表示匹配 0-6 位数字
(\.\d{1,2})? 表示小数部分,其中 \. 表示匹配小数点,\d{1,2} 表示匹配 1-2 位数字,? 表示小数部分可有可无
$ 表示匹配字符串的结尾
所以这个正则表达式可以匹配 0.01-9999999.99 范围内的数字。
相关问题
写一个正则校验:只能输入数字,小数点后最多只能输入两位,且不允许输入负数
可以使用如下正则表达式进行校验:
```
/^[0-9]+(.[0-9]{1,2})?$/
```
解释如下:
- `^` 匹配字符串开始的位置
- `[0-9]+` 匹配一个或多个数字
- `(.[0-9]{1,2})?` 匹配小数点后面的数字,括号内的 `?` 表示该组匹配为可选。`.` 匹配小数点,`[0-9]{1,2}` 匹配一个或两个数字
- `$` 匹配字符串结束的位置
完整的校验代码示例:
```javascript
function validateInput(inputValue) {
const regExp = /^[0-9]+(.[0-9]{1,2})?$/;
return regExp.test(inputValue);
}
console.log(validateInput('123')); // true
console.log(validateInput('123.45')); // true
console.log(validateInput('123.456')); // false
console.log(validateInput('-123')); // false
```
注意:上述代码中没有处理输入为空的情况,需要根据实际情况进行处理。
0~15范围内的正则,最多两位小数
如果你想匹配0~15范围内的数字,并且最多有两位小数,可以使用以下正则表达式:
^([0-9]|1[0-4]|15)(\.\d{1,2})?$
这个正则表达式可以匹配0到15之间的数字,并且允许最多两位小数。其中,([0-9]|1[0-4]|15)表示匹配0到9、10到14、15这三个范围内的整数。(\.\d{1,2})?表示匹配小数点及其后面的1到2位数字,这部分是可选的。
希望这个正则表达式能满足你的需求!如果还有其他问题,请随时提问。
阅读全文