利用正则表达式使C#判断输入日期格式是否正确

正则表达式使C#判断输入日期格式是否正确的方法

C#判断输入日期格式代码如下

 
 
 
  1. /// <summary>  
  2.         /// 是否为日期型字符串  
  3.         /// </summary>  
  4.         /// <param name="StrSource">日期字符串(2008-05-08)</param>  
  5.         /// <returns></returns>  
  6.         public static bool IsDate(string StrSource)  
  7.         {  
  8.             return Regex.IsMatch(StrSource, @"^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-9]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$");  
  9.         }  
  10.  
  11.         /// <summary>  
  12.         /// 是否为时间型字符串  
  13.         /// </summary>  
  14.         /// <param name="source">时间字符串(15:00:00)</param>  
  15.         /// <returns></returns>  
  16.         public static bool IsTime(string StrSource)  
  17.         {  
  18.             return Regex.IsMatch(StrSource, @"^((20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d)$");  
  19.         }  
  20.  
  21.         /// <summary>  
  22.         /// 是否为日期+时间型字符串  
  23.         /// </summary>  
  24.         /// <param name="source"></param>  
  25.         /// <returns></returns>  
  26.         public static bool IsDateTime(string StrSource)  
  27.         {  
  28.             return Regex.IsMatch(StrSource, @"^(((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-)) (20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d)$ ");  
  29.         } 

C#判断输入日期格式的实例就介绍到这里。

【编辑推荐】

  1. C# 4.0 Dynamic关键字全解析
  2. 浅谈C#中构造函数和成员函数
  3. C#回调函数及API应用浅析
  4. 详解C# Object.Equals函数
  5. C#调用Windows API函数
THE END