js 正则表达式校验数字,确保它是一个不带小数点的正数,或者是一个带小数点的正数且小数点后最多保留两位
时间: 2024-09-20 15:13:59 浏览: 35
利用js正则表达式校验正数、负数、和小数
在JavaScript中,你可以使用正则表达式来验证输入是否符合这个规则。下面是一个简单的例子:
```javascript
function isValidNumber(input) {
const regex = /^(?!.*\.\d{3})[0-9]+(\.[0-9]{1,2})?$/;
return regex.test(input);
}
// 示例
console.log(isValidNumber(123)); // true - 整数正数
console.log(isValidNumber(123.45)); // true - 小数点后不超过两位的正数
console.log(isValidNumber("123.456")); // false - 小数点后超过两位
console.log(isValidNumber(-123)); // false - 负数
console.log(isValidNumber(".123")); // false - 只有小数部分
```
上述函数`isValidNumber`接收一个字符串作为输入,正则表达式的含义是:
- `^` 表示开始
- `(?!.*\.\d{3})` 是否定前瞻断言,确保不会有多余的三位小数
- `[0-9]+` 匹配一或多个数字(整数部分)
- `(\.[0-9]{1,2})?` 是可选部分,匹配小数点后的一到两位数字
- `$` 表示结束
阅读全文