正则表达式只匹配0到2之间的1位

时间:2016-02-10 16:05:46

标签: .net regex

我试图编写一个具有thoese属性的正则表达式:

  • 只有一位数。 (不多也不少)
  • 数字只能是0或1或2.

第二个属性很简单(0|1|2)[0-2],但我无法将其限制为一位数。

谢谢。

1 个答案:

答案 0 :(得分:3)

在.NET(以及许多其他正则表达式实现)中,正则表达式匹配的方法不检查完整字符串是否匹配,它们检查是否有任何子字符串匹配。根据其逻辑,"awffowhf35lhns1afwa"是匹配的,因为它包含子串"1"

要仅允许整个字符串匹配,您可以使用^$特殊字符来定位字符串的开头和结尾:^[0-2]$