【发布时间】:2011-10-12 16:05:13
【问题描述】:
我必须验证一个应该包含小时数的字符串(例如 00 到 23)。
因此我设置了如下注释:
[RegularExpression("[01]?[0-9]|2[0-3]", ErrorMessage = "Error")]
public string JobStartHour {...}
不幸的是,这个正则表达式与从 20 到 23 的输入不匹配,因为它应该这样做(恕我直言)。
这个 RegularExpression 属性不使用普通的旧 Regex.IsMatch 吗?
Regex.IsMatch("22", "[01]?[0-9]|2[0-3]")
返回真...
编辑:我知道,使用字符串来存储数字并不是最好的主意,但是,这个正则表达式问题很烦人。
【问题讨论】:
-
我已经更新了我的答案,使其适用于“0”或“00”。希望这能解决您的问题。
标签: regex asp.net-mvc-3 validation