我需要一个正则表达式来验证使用xsd的日期格式YYYY-MM-DDThh:mm:ssZ。你能帮我弄到正则表达式模式吗?
发布于 2014-10-07 21:11:22
这个正则表达式将只验证日期时间,而不仅仅是日期或时间。日期采用DD/MM/YYYY HH:mm格式,并针对月份、一个月中的天数和闰年(29/2)进行验证。日期字段可以由匹配的句点(.)、短划线(-)或正斜杠(/)分隔。年份范围1900-9999时间为24小时军用格式(HH:mm:SS),从00:00:00到23:59:59,其中小时和分钟字段是必需的,包括表示小于10小时的前导0。日期时间是以空格分隔的上述日期和时间格式,日期在前(DD/MM/YYYY HH:mm)!重要说明:要使用此表达式,您的regex引擎必须支持lookahead和命名组
(?n:^(?=\d)((?<day>31(?!(.0?[2469]|11))|30(?!.0?2)|29(?(.0?2)(?=.{3,4}(19|[2-9]\d)(0[48]|[2468][048]|[13579][26])|(16|[2468][048]|[3579][26])00))|0?[1-9]|1\d|2[0-8])(?<sep>[/.-])(?<month>0?[1-9]|1[012])\2(?<year>(19|[2-9]\d)\d{2})(?:(?=\x20\d)\x20|$))?(?<time>([01]\d|2[0-3])(:[0-5]\d){1})$)https://stackoverflow.com/questions/26236766
复制相似问题