js正则表达式保留三位小数,不是负数,必须是三位小数
时间: 2023-10-28 11:05:48 浏览: 166
可以使用以下正则表达式来匹配保留三位小数的非负数:
```javascript
/^\d+(\.\d{1,3})?$/
```
解释一下:
- `^` 匹配字符串起始位置
- `\d+` 匹配一个或多个数字
- `(\.\d{1,3})?` 匹配一个小数点后面跟着 1 到 3 个数字的子串,问号表示这个子串是可选的
- `$` 匹配字符串结尾位置
这个正则表达式匹配的字符串示例:
- `123.456`
- `0.789`
- `999.999`
- `123`
- `0`
- `999`
如果要匹配正负数,可以使用以下正则表达式:
```javascript
/^-?\d+(\.\d{1,3})?$/
```
在上面的正则表达式前面加上 `-?`,匹配负号出现 0 次或 1 次,即可匹配正负数。
相关问题
js正则表达式保留三位小数,不是负数
可以使用如下正则表达式来匹配保留三位小数且不为负数的数字:
```
/^\d+(\.\d{1,3})?$/
```
解析:
- `^` 匹配字符串的开始
- `\d+` 匹配一个或多个数字字符
- `(\.\d{1,3})?` 匹配一个小数点后面跟着一到三个数字字符的子串,该子串可以出现零次或一次
- `$` 匹配字符串的结尾
因此,该正则表达式可以匹配如下字符串:
- 123
- 123.45
- 123.456
- 0.123
- 0.1
- .123
但是,它不会匹配如下字符串:
- -123
- -123.45
- -0.123
- -0.1
- -.123
保留两位小数正则表达式
保留两位小数的正则表达式为:var regs = /^([0-9]{1}|^[1-9]{1}\d{1,15})(\.\d{1,2})?$/。这个正则表达式可以用于金额校验,要求输入的数值必须是非负数,小数点后必须保留两位,且不能出现类似整数前几位全为零的情况。如果需要保留三位或更多位小数,只需要将正则表达式中的2改为3或其他数字即可。
阅读全文