Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于数字检查的Javascript正则表达式,最大长度为3,且不以0开头_Javascript_Regex - Fatal编程技术网

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

用于数字检查的Javascript正则表达式,最大长度为3,且不以0开头,javascript,regex,Javascript,Regex,目前我正试图找到一个正则表达式,它执行以下操作 1) 核对号码 2) 允许最大长度为3 3) 不以0开头 我有下面的正则表达式,它工作得很好 ^[0-9]{1,3}$ 上面的正则表达式只允许最大3位数的数字,但我不确定如何在开始时防止0 代码 让我知道我错过了什么 谢谢像这样试试: ^[1-9][0-9]?[0-9]?$ > "123".match(/^[1-9][0-9]{0,2}$/) [ '123', index: 0, input: '123' ] > "023".mat

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

1) 核对号码

2) 允许最大长度为3

3) 不以0开头

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

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

上面的正则表达式只允许最大3位数的数字,但我不确定如何在开始时防止0

代码

让我知道我错过了什么

谢谢

像这样试试:

^[1-9][0-9]?[0-9]?$ 
> "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
或:

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

^[1-9][0-9]?[0-9]?$ 
> "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
试着这样做:

^[1-9][0-9]?[0-9]?$ 
> "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
或:

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

^[1-9][0-9]?[0-9]?$ 
> "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}$

或者可以用

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

我试过你的第二个正则表达式,因为第一个看起来更详细,第二个允许012,这是我试图避免的。第一个不允许我输入'123':|@stackoverman它应该:
/^[1-9][0-9]?[0-9]?$/。test('123'))//真的
我正在用代码编辑我的问题..让我知道是什么错了,我想再试试看我是否遗漏了什么我已经尝试了你的第二个正则表达式,因为第一个看起来更详细,第二个正则表达式允许012,这是我试图避免的..第一个不允许我输入'123':|@stackoverman它应该:
/^[1-9][0-9]?[0-9]?$/.test('123')//true
我正在用代码编辑我的问题..让我知道什么错了我再次尝试查看是否遗漏了任何内容不确定是否遗漏了任何内容不允许我输入123不确定是否遗漏了任何内容不允许我输入123