RegularExpressionValidator为有效输入返回false

时间:2013-09-24 15:43:43

标签: c# regex validation c#-2.0 asp.net-3.5

我正在尝试验证时区偏移,其格式为可选减号,后跟两位数字,后跟冒号后跟两位数字;喜欢-05:00或04:30。 我使用\ b [ - ]?\ d {2}:\ d {2} \ b作为验证表达式,在一些在线RE测试网站上测试它,我得到“成功匹配”但验证器不断返回falase。我看不出我做错了什么。我输入-05:00或-13:99,它们都返回false。我试图逃避结肠,但同样的事情。

1 个答案:

答案 0 :(得分:1)

删除单词边界然后你就会得到你的匹配。

-?\d{2}:\d{2} 

如果你只想要第一次出现,那么就这样:

-?\d{2}:\d{2}$

如果您只想匹配有效时间,请使用以下内容:

-?([0-2][0-3]|[0-1][0-9]):([0-5][0-9])

以上任何一小时都会匹配0-23:0-59 btw范围内的任何小时。