我希望Reg表达式接受[1-48]范围内的值。
答案 0 :(得分:4)
您可以尝试使用此正则表达式:^0*(?:[1-9]|[1-3][0-9]|4[0-8])$
但是,如果可能的话,我建议使用其他机制进行数字验证。正则表达式用于匹配字符串模式,正如评论中已经指出的那样。
以下是正则表达式的部分解释:
^
:字符串的开头0*
:匹配任何前导0 (?:
:对OR进行分组(非捕获组)
[1-9]
:匹配1到9 |
:或
[1-3][0-9]
:匹配10到39 |
:或
4[0-8]
:匹配40到48 )
:结束对OR的分组$
:字符串结尾在this RegExr中查看它。
您可能会发现一些有用的资源可以帮助您自己设计/测试它们:
答案 1 :(得分:0)
我不明白你为何使用regEx。你可以直接说
if( x >= 1 && x <=48) {
// x will fall in range[1-48] inclusive
}