我会承认我对正则表达式的垃圾,并找到一些应该使它们更难以使用的工具。那是我的错...但无论如何..
任何人都可以提出一个允许两者的正则表达式 dd / MM / yyyy和/或dd / MM / yyyy hh:mm:ss
是的,我用Google搜索并搜索了regexlib。
非常感谢。
提前干杯。
更新:
伙计们,我显然认为服务器端解析..我正在专门请求正则表达式。 我可能还会依赖它。
我还查看了许多在线资料,包括Google快速提供的网站,所以请不要提交明显的网站,因为我已经尝试过这些网站并在此处提出问题。
更新:
伙计们,我倾向于通过服务器端日期解析来做这件事..但我仍然很好奇正则表达式是什么。
答案 0 :(得分:4)
你可能最好使用DateTime.TryParseExact()
。它有一个重载,允许您指定多种可能的格式。
答案 1 :(得分:3)
这是一个
[0-9]{2}/[0-9]{2}/[0-9]{4}( [0-9]{2}:[0-9]{2}:[0-9]{2})?
编辑:改进格式,感谢Nathan Campos。
或者,消除了更多无效值:
[0-3][0-9]/[01][0-9]/[0-2][0-9]{3}( [0-2][0-9]:[0-5][0-9]:[0-5][0-9])?
答案 2 :(得分:0)
您可以在此处尝试不同的建议:http://www.regexr.com/
答案 3 :(得分:0)
这应该可以正常工作,并进行大多数验证(除了几个月的天数):
([0-2][0-9]|3[0-1])/(0[1-9]|1[0-2])/[0-9]{4}( ([0-1][0-9]|2[0-3])(:[0-5][0-9]){2})?
您可以在日期中添加按月计算的情报,但RegEx表达式看起来相当毛茸茸。
答案 4 :(得分:0)
这对我有用
^(0[1-9]|[12][0-9]|3[01])[-]?(0[1-9]|1[0-2])[-]?(18|19|20|21)\\d{2} ([0-2][0-4]:[0-5][0-9]:[0-5][0-9])$
有效数据格式为25-03-2014 24:10:10 如果您需要验证25/03/2014 24:10:10使用此
^(0[1-9]|[12][0-9]|3[01])[/]?(0[1-9]|1[0-2])[/]?(18|19|20|21)\\d{2} ([0-2][0-4]:[0-5][0-9]:[0-5][0-9])$
答案 5 :(得分:0)
Reg Ex:
^ [0-9] {1,2} / [0-9] {1,2} / [0-9] {4}([0-9] {2}:[0-9] { 2}:[0-9] {2}(A | P | a | p)(M | m))?$
E.g。
5/31/2016 12:00:00 PM
2016年5月31日
2016年5月3日
05/3/2016 12:00:00 PM
5/3/2016 12:00:00 PM
5/3/2016 12:00:00 AM