zoukankan      html  css  js  c++  java
  • js 日期正则校验

    // 日期
    function isDate(date) {
         date = $.trim(date);
         var I = /^(d{4})-(d{2})-(d{2})$/;
         I.exec(date);
         if (!I.test(date) && RegExp.$2 <= 12 && RegExp.$3 <= 31) {
             return false;
         }
         var year, month, day;
         year = parseInt(date.split("-")[0], 10);
         month = parseInt(date.split("-")[1], 10);
         day = parseInt(date.split("-")[2], 10);
         if (! ((1 <= month) && (12 >= month) && (31 >= day) && (1 <= day))) {
             return false;
         }
         if ((month <= 7) && ((month % 2) == 0) && (day >= 31)) {
             return false;
         }
         if ((month >= 8) && ((month % 2) == 1) && (day >= 31)) {
             return false;
         }
         if (month == 2) {
             if ((year % 400 == 0) || ((year % 4 == 0) && (year % 100 != 0))) {
                 if (day > 29) {
                     return false;
                 }
             } else {
                 if (day > 28) {
                     return false;
                 }
             }
         }
         return true;
     }

     加入闰年平年的日期正则校验

    ^((((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]|1d|2[0-8]))|(((1[6-9]|[2-9]d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$

    日期js比较可以直接用>,<,==('2012-12-13>2012-12-14',结果返回false)

  • 相关阅读:
    tyvj1034 尼克的任务
    一维数状数组区间修改,查询
    ACM-T3分块
    测试2T3
    IOS下自定义click事件使用alert的bug
    小知识点
    CSS3动画基本知识
    CSS3秘笈:第十二章&第十三章
    CSS3秘笈:第十一章
    CSS3秘笈:第十章
  • 原文地址:https://www.cnblogs.com/pumushan/p/5130883.html
Copyright © 2011-2022 走看看