2011-06-02 82 views
1

我试过了 - “Test \ d \ d \ d”,它工作正常,但问题在于,表达式中的String可能包含任意数量的数字,因此它可能是“Test1”或“Test12”或“Test123”。因此它可能在范围[000]至[999]什么是“Test123”的正则表达式

+0

这么快,很多答案:) – Tarun 2011-06-02 07:20:31

回答

3

这应该有助于 Test[0-9]{1,3}

  • [0-9]指定0之间的任何数字 - 9
  • {1,3}指定的范围内的数字 范围从数1至3
+0

适用于Test123,但是当我使用这个Test1时它失败:( – Tarun 2011-06-02 07:24:27

+0

我的不好,适用于所有... – Tarun 2011-06-02 07:28:45

+0

@Tarun - 它应该,你可以粘贴代码你正在执行? – niksvp 2011-06-02 07:29:12

4
Test[0-9]{1,3} 

应该做你所需要的。 [0-9]定义了一个包含数字的范围(您也可以使用\d),而{1,3}语法定义前面的模式应至少发生一次,但不超过三次。

RegExr Demo

0

如果您的意思是“任何数字位数“,因此Test123456也是可行的,Test [0-9] +或Test \ d +是另一种选择。

+0

他定义了一系列'[000]到[999]''。 – kapa 2011-06-02 07:20:48

+0

只是提供一些未来的打样;) – tofutim 2011-06-02 07:34:52

+0

取决于问题。它可以是未来的证明,或者它可以打破东西:)。 – kapa 2011-06-02 07:44:43