用正则表达式检测日期时间
2011-06-11 18:31
381 查看
在 http://www.regexlib.com/ 找到一个用于日期时间检测的正则表达式, 效果不错.
匹配: 02/29/2004 02/29/2004 15:02:59 2/29/2004 15:2:59
不匹配: 2/29/1900 2/29/1900 25:12:59
/// <summary> /// 检测是否为可识别的日期时间格式 /// </summary> /// <param name="dateTime"></param> /// <returns></returns> internal static bool CheckDateTimeFormat(string dateTime) { string datePattern = @"^(((((0?\d)|(1[0-2]))\/(([0-1]?\d)|(2[0-8])))|(((0?[1,3-9])|(1[0-2]))\/29)|(((0?[1,3-9])|(1[0-2]))\/30)|(((0?[13578])|(1[0-2])))\/31)\/((19\d{2})|([2-9]\d{3}))|(0?2\/29\/(((([2468][048])|([3579][26]))00)|(((19)|([2-9]\d))(([2468]0)|([02468][48])|([13579][26]))))))$"; string dateTimePattern = @"^(((((0?\d)|(1[0-2]))\/(([0-1]?\d)|(2[0-8])))|(((0?[1,3-9])|(1[0-2]))\/29)|(((0?[1,3-9])|(1[0-2]))\/30)|(((0?[13578])|(1[0-2])))\/31)\/((19\d{2})|([2-9]\d{3}))|(0?2\/29\/(((([2468][048])|([3579][26]))00)|(((19)|([2-9]\d))(([2468]0)|([02468][48])|([13579][26]))))))\s(([01]?\d)|(2[0-3]))(:[0-5]?\d){2}$"; return Regex.IsMatch(dateTime, datePattern) || Regex.IsMatch(dateTime, dateTimePattern); }
匹配: 02/29/2004 02/29/2004 15:02:59 2/29/2004 15:2:59
不匹配: 2/29/1900 2/29/1900 25:12:59
相关文章推荐
- 一个特牛的日期时间判断正则表达式
- Js获取当前日期时间、比较及正则表达式转换格式
- 电话号码及日期时间提取(正则表达式 C语言)
- 日期和时间的正则表达式
- Python正则表达式匹配日期与时间
- Python 正则表达式验证ISO 8601日期和时间
- 各种格式的时间日期正则表达式
- javascript 验证日期时间的正则表达式
- 验证日期时间的正则表达式
- C#:日期和时间的正则表达式
- 日期时间判断正则表达式
- 一个日期时间判断的正则表达式
- 判断日期和时间格式的 正则表达式
- 正则表达式匹配日期时间
- 验证日期时间的正则表达式
- 日期时间正则表达式-整理
- Python 正则表达式匹配字符串中的日期和时间
- 时间日期正则表达式
- 一个特牛的日期时间判断正则表达式
- 用正则表达式检验是否输入日期时间是有效&&&&&& execCommand指令集