1

我在网上搜索并找到了很多这种格式的表达方式,但都没有奏效。我使用了多个测试站点并且都失败了:(所以我希望我可以通过寻求帮助来解决这个问题!我只需要正则表达式来验证格式范围为 01/01/20XX 到 12/31/ 的日期20XX

也通过了这个

20XX 年 1 月 1 日至 20XX 年 12 月 31 日

一旦我得到这个表达式,我将验证一个常量字符串,我将把它附加到最后,即 12:00:00 AM。希望这种常见格式的谜团能尽快解开!:)

4

2 回答 2

10

你不想要一个正则表达式。真的。您想使用DateTime.TryParse()DateTime.TryParseExact()(除非这是用于 javascript,在这种情况下,您确实应该将其作为标签包含在内)。

于 2012-12-11T19:12:39.747 回答
0

试试这个:

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

如果您需要有关单个数字的进一步解释,请参见此处:正则表达式描述

更新:

如果您想检查日期和时间,请使用以下正则表达式:

^(0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])[- /.](19|20)\d\d ([01]?[0-9]|2[0-3]):[0-5][0-9] (am|pm|AM|PM)$

我用值“02.02.2012 12:00 AM”测试了这个……它对我有用。

于 2012-12-11T19:22:55.447 回答