正则表达式验证日期的数字和正斜杠

时间:2013-03-22 01:31:43

标签: c# asp.net .net regex

您好我正在尝试使用正则表达式来表示日期mm / dd / yyyy C#。 我有这个

^(0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])[- /.](19|20)\d\d$

但它不起作用 enter image description here

如何操作它将适用于3/1/2013和03/01/2013

2 个答案:

答案 0 :(得分:6)

请勿使用正则表达式,请使用DateTime.TryParseDateTime.TryParseExact

还要了解当前的文化和用户的期望。美国人使用“MM / dd / yyyy”,但世界其他地方(通常)使用“dd / MM / yyyy”,两者都无法区分大范围的日期。

答案 1 :(得分:1)

我同意你应该使用DateTime方法。但是如果你想让前导零可选,你可以在它们之后添加?,如下所示:

^(0?[1-9]|1[012])[- /.](0?[1-9]|[12][0-9]|3[01])[- /.](19|20)\d\d$