3

我正在创建一个正则表达式来验证多种格式的日期,并且我发现了大量有关如何处理以下格式的日期的信息:

06/19/2013
06-19-2013
06 19 2013
06.19.2013

但我似乎无法让正则表达式处理

06192013

这是我的正则表达式:

((0?[1-9]|1[012])[- \/.](0?[1-9]|[12][0-9]|3[01])[- \/.]((19|20)?[0-9]{2}

如何处理没有分隔符的日期?

4

2 回答 2

2

只需将其设为可选

(0?[1-9]|1[012])[- \/.]?(0?[1-9]|[12][0-9]|3[01])[- \/.]?(19|20)?[0-9]{2}
                       ^                                ^
于 2013-06-19T22:55:56.860 回答
0

你为什么不使用DateTime.TryParseExact()

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

于 2013-06-19T23:05:29.027 回答