C# - 正则表达式验证日期和小时

use*_*364 3 c# validation

我从CSV文件收到日期和时间

The received Date format is  YYYYMMDD (string) (there is no ":" ,"-","/" to 
separate  Year month and date).

The received time format is HH:MM (24 Hour clock).
Run Code Online (Sandbox Code Playgroud)

我必须验证两者,以便(例)(i)000011990可以在日期无效(ii)77:90可能会因时间而失效.

问题是 ,

正则表达式是这样做的正确候选者(或)有没有其他方法来实现它?

SLa*_*aks 9

您正在寻找DateTime.TryParseExact:

string source = ...;
DateTime date;
if (!DateTime.TryParseExact(source, 
                            "yyyyMMdd", 
                            CultureInfo.InvariantCulture, 
                            DateTimeStyles.None, 
                            out date)) {
    //Error!
}
Run Code Online (Sandbox Code Playgroud)

您可以使用相同的代码来验证时间,格式字符串"HH:mm".

  • +1我会被诅咒....为什么我以前没见过?感谢您指出了这一点 !! (2认同)