/// <summary> /// 是否为日期型字符串 /// </summary> /// <param name="value">日期字符串(2008-05-08)</param> /// <returns></returns> public static bool IsDate(string value) { return Regex.IsMatch(value, @"^((((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-))$"); } /// <summary> /// 是否为时间型字符串 /// </summary> /// <param name="value">时间字符串(15:00:00)</param> /// <returns></returns> public static bool IsTime(string value) { return Regex.IsMatch(value, @"^((20|21|22|23|[0-1]?/d):[0-5]?/d:[0-5]?/d)$"); } /// <summary> /// 是否为日期+时间型字符串 /// </summary> /// <param name="value"></param> /// <returns></returns> public static bool IsDateTime(string value) { return Regex.IsMatch(value, @"^(((((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)$ "); }