* NIX REGEXP编号系列

时间:2014-04-07 12:25:23

标签: regex

正在玩regexp,但这是我的头疼。我有一个需要后缀的动态数字。后缀始终为0到9,99或999.

示例:

我的号码为461200,现在我要创建一个匹配461200461209的正则表达式。我所学到的应该是^46120[0-9]$?这是正确的还是在地狱左边的某个地方?

好的,我们假设这是正确的,我现在想要匹配461200 - 461299?这就是我迷路的地方。

^4612[0-9]{2}

不可能。我还没弄清楚这一点。

任何帮助表示感谢。

3 个答案:

答案 0 :(得分:3)

最后需要1位数字:

^4612[0-9]$

最后2位数:

^4612[0-9]{2}$

最后3位数:

^4612[0-9]{3}$

大括号{}中的数字表示前一个字符或集合必须重复的次数。

答案 1 :(得分:2)

  

好的,我们假设这是正确的,我现在想要匹配461200 -   461299?

您可以通过说出[0-9][0-9]或使用量词[0-9]{2}重复所需的字符类。

可以是:

^4612[0-9][0-9]$

^4612[0-9]{2}$

两者都可以。

答案 2 :(得分:0)

也许试试这个正则表达式:

^4612\d{2}$