使用正则表达式匹配1到105之间的数字

时间:2013-06-23 17:02:45

标签: regex

我尝试了几个选项但没有成功。

(105)|(0*\d{1,2})

这是我去的地方?

5 个答案:

答案 0 :(得分:3)

也许这就是:

/\b0*([1-9]|[1-9][0-9]|10[0-5])\b/

答案 1 :(得分:3)

这个怎么样:

  

/ 10 [0-5] | [0-9] {1,2} /

  • 10 [0-5]:匹配'100'到'105'(含)
  • [0-9] {1,2}:匹配范围'00'到'99'和'0'到'9'

答案 2 :(得分:3)

我喜欢上面/10[0-5]|[0-9]{1,2}/的答案,但它没有锚定,所以它会匹配像990和1051这样的东西。它将匹配为我的意思的正则表达式。

锚定正则表达式在开始时使用^,在结尾处使用$。这是答案的改进版本

/^(10[0-5]|\d{1,2})$/

我使用\d这是[0-9]数字的常用快捷方式

编辑:请参阅下面的tripleee评论,还需要()将两个替代表达式分组

答案 3 :(得分:0)

您可以随时使用匹配评估程序并检查您想要的任何条件。

答案 4 :(得分:0)

这可能是更好的一个:

\b0*(10[0-5]|[0-9]{1,2})\b

照顾领先的零。