<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    zhyiwww
    用平實的筆,記錄編程路上的點點滴滴………
    posts - 536,comments - 394,trackbacks - 0

    我們要檢驗的日期格式:XXXX-XX-XX(X為數字)


    [\d]{4}-[\d]{2}-[\d]{2}

    這個是我看到的一個日期驗證的正則表達式。

    看起來能實現,因為

    2006-6-6 肯定是不符合的,而

    2006-06-06 肯定是符合的。

    但是,我們來看,

    2006-00-00 也肯定是符合的,但是,有意義嗎?

    2006-99-99 也肯定是符合的,但是,有意義嗎?

    答案,大家都知道,肯定沒有意義。所以,我覺得這個表達式還有要改進的地方。

    問題的關鍵是數值大小的限制,如何來限制?

    我把它改進了一下:

    [\d]{4}-[0-1][0-9]-[0-3][0-9]

    我們乍一看,覺得可行,

    2006-19-39 肯定符合,但是沒有意義。

    看來,還是有問題。

    到現在,我也沒有想清楚這個看似簡單的問題如何來解決。

    ?

    如果用這個表達式來檢驗日期的話,是不行的,還需要你進行數值范圍的驗證。

    如果哪位朋友知道的話,請指點一二。謝謝。



    |----------------------------------------------------------------------------------------|
                               版權聲明  版權所有 @zhyiwww
                引用請注明來源 http://www.tkk7.com/zhyiwww   
    |----------------------------------------------------------------------------------------|
    posted on 2007-03-19 11:07 zhyiwww 閱讀(6093) 評論(6)  編輯  收藏 所屬分類: 正則表達式

    FeedBack:
    # re: 疑惑:如何用正則表達式來驗證日期
    2007-03-19 11:10 | zhyiwww
    難道正則表達式只能用來匹配不能用來驗證?現在還不明白。
      回復  更多評論
      
    # re: 疑惑:如何用正則表達式來驗證日期
    2007-03-20 08:37 | kawaii
    看看這個行嗎
    [/d{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])]  回復  更多評論
      
    # re: 疑惑:如何用正則表達式來驗證日期
    2007-03-20 11:23 | zhyiwww
    這個沒有問題了,就我們的驗證足夠了。
    現在我們把我們的需求放在一邊,就來討論技術的實現。

    如果嚴格來定義一個合法合理的日期的話,可能還有一個日期不能實現:
    2007-02-29
    這個日期,上面能驗證通過,但是,我們查一下日歷就知道,沒有29這一天。
    現在問題,是,驗證日期的合理性,而不僅是驗證其合法性的問題了。
    如果感興趣的話,可以思考一下。
    這個問題,我也沒有想好。
      回復  更多評論
      
    # re: 疑惑:如何用正則表達式來驗證日期
    2007-03-20 11:27 | zhyiwww
    現在我們問題是如何用正則表達式來表達閏年和非閏年?
      回復  更多評論
      
    # re: 疑惑:如何用正則表達式來驗證日期[未登錄]
    2007-08-29 14:44 | tony
    試試這個看看:霍霍!!!
    /*
    *validate date(include bissextile)
    *format: yyyy-MM-dd
    *add by tony
    */
    function isValidDate(sText) {
    var reDate = /^((((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))$/

    return reDate.test(sText);
    }
    若有正則表達式方面交流的意向,可加我的MSN: niitlzm@hotmain.com  回復  更多評論
      
    # re: 疑惑:如何用正則表達式來驗證日期[未登錄]
    2008-05-11 22:05 | terry
    /^(19[7-9]\d|20[0-5]\d)\-(0?\d|1[0-2])\-([0-2]?\d|3[01])$/  回復  更多評論
      
    主站蜘蛛池模板: 久久久久无码精品亚洲日韩| 亚洲av无码不卡一区二区三区 | 亚洲成色WWW久久网站| 免费人成再在线观看网站| 国产午夜影视大全免费观看| 最新中文字幕电影免费观看| 国产午夜亚洲精品国产成人小说| 免费国产草莓视频在线观看黄| 日本免费人成视频播放| 色噜噜的亚洲男人的天堂| 免费v片在线观看无遮挡| 91亚洲导航深夜福利| 四虎在线免费视频| 国产亚洲美女精品久久久| 中文字幕免费人成乱码中国| 亚洲VA中文字幕不卡无码| 日韩免费无码一区二区三区 | 四虎永久精品免费观看| 女人裸身j部免费视频无遮挡| 中文字幕久久亚洲一区| 亚洲精品国产suv一区88| 国产免费牲交视频| 两性色午夜视频免费播放| 亚洲男人都懂得羞羞网站| 在线观看成人免费视频不卡| 亚洲AV电影天堂男人的天堂| 亚洲国产精品尤物YW在线观看| 两个人看的www免费视频中文 | 亚洲日本一线产区和二线| 美丽的姑娘免费观看在线播放| 亚洲国产成人精品激情| 一区二区三区亚洲视频| 日韩色视频一区二区三区亚洲 | 亚洲电影一区二区| 午夜无遮挡羞羞漫画免费| 亚洲精品视频免费| 亚洲色欲色欲www| 色久悠悠婷婷综合在线亚洲| 国产精品免费精品自在线观看| 美女被免费视频网站| 亚洲欧洲日产国码在线观看|