Life is a journey

Who Dares Wins
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Javascript Regular Expression 日期

Posted on 2009-06-29 15:19  zhaobin  阅读(287)  评论(0编辑  收藏  举报

^((29\/02\/((((0[48])|([13579][26])|([2468][048]))00)|([0-9][0-9]((0[48])|([13579][26])|([2468][048])))))|((31\/(((0[13578])|(1[02])))|((29|30)\/((0[1,3-9])|(1[0-2])))|(((0[1-9])|(1[0-9])|(2[0-8]))\/((0[1-9])|(1[0-2]))))\/((000[1-9])|(00[1-9][0-9])|(0[1-9][0-9][0-9])|([1-9][0-9][0-9][0-9]))))$

 

详解:

^((29\/02\/((((0[48])|([13579][26])|([2468][048]))00)

可以整除400的年份:0400,0800,1200,1600,2000,2400, 2800

|([0-9][0-9]((0[48])|([13579][26])|([2468][048])))))

可以整除4的年份(不包括整除100的):xx04,xx08,xx12,xx16,xx20,xx24,xx28

|((31\/(((0[13578])|(1[02])))

含有31天的月份

|((29|30)\/((0[1,3-9])|(1[0-2])))

含有29天/30天的月份(不包含二月)

|(((0[1-9])|(1[0-9])|(2[0-8]))\/((0[1-9])|(1[0-2]))))

1号到28号所有的天数

\/((000[1-9])|(00[1-9][0-9])|(0[1-9][0-9][0-9])|([1-9][0-9][0-9][0-9]))))$

所有的年(0001-9999)