用于数字检查的Javascript正则表达式,最大长度为3,并且不以0开头

Javascript regex for number check and maximum length of 3 and does not start with 0

本文关键字:开头 检查 数字 Javascript 正则表达式 用于      更新时间:2023-09-26

当前我正试图找到一个正则表达式,它执行以下

1) 支票号码

2) 允许3个的最大长度

3) 不以0 开始

我有下面的正则表达式,它工作得很好

^[0-9]{1,3}$

上面的正则表达式只允许最多有3位数字的数字,但我不知道如何防止开头出现0。

代码

var numericRegex = new RegExp("^[1-9][0-9]{0,2}$");
numericRegex.test(123) //false

让我知道我错过了什么

感谢

这样试试:

^[1-9][0-9]?[0-9]?$ 

或:

^[1-9][0-9]{0,2}$ 

在node.js中,它可以这样使用:

> "123".match(/^[1-9][0-9]{0,2}$/)
[ '123', index: 0, input: '123' ]
> "023".match(/^[1-9][0-9]{0,2}$/)
null
> "123".match(/^[1-9][0-9]?[0-9]?$/)
[ '123', index: 0, input: '123' ]
> "023".match(/^[1-9][0-9]?[0-9]?$/)
null

另一个答案也很好:

> "123".match(/^(?!0)'d{1,3}$/)
[ '123', index: 0, input: '123' ]
> "023".match(/^(?!0)'d{1,3}$/)
null

或者可以使用

^(?!0)'d{1,3}$

最短的正则表达式应该是

^[1-9]{1}'d{2}$