如何创建用于检查特定时间范围的正则表达式

时间:2011-07-05 04:45:19

标签: c# .net regex validation time

我希望检查时间字符串为<= 09:00。 这意味着要检查两个条件

1. Hrs part lies between 0-8 and minutes part between 0-59
2. Hrs part is 09 and minutes part is 0

任何人都可以为此提供正则表达式。我匹配的模式是一个字符串,例如。 "07:50", "9:00", "10:15"。这些不是时间格式。

2 个答案:

答案 0 :(得分:4)

您可以使用C#DateTime来执行比较,而不是正则表达式吗?这样可以保持代码的强类型。如果您具有String格式的日期,则可以使用以下命令将其解析为DateTime对象:

DateTime.Parse(String, IFormatProvider, DateTimeStyles)

然后,您可以使用GreaterThan和LessThan运算符来比较您拥有的特定日期/时间。

http://msdn.microsoft.com/en-us/library/system.datetime.aspx#Y69

答案 1 :(得分:3)

像这样:

/^0?([0-8]:[0-5][0-9]|9:00)$/