我們要檢驗的日期格式: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) 編輯 收藏 所屬分類:
正則表達式