2012-12-03 135 views
0

有人可以寫一個正則表達式來測試這個日期格式2012/11/14 14:28:12日期時間格式正則表達式YYYY/MM/DD hh:mm:ss

我已經有日期部分正則表達式:

/^\d{4}\/\d{2}\/\d{2}$/ 

我如何可以添加到這個來測試的時間存在?

+3

'/^\ d {4} \/\ d {2} \/\ d {2} \ d {2}:\ d {2}:\ d {2} $ /' –

+4

您確定'9999/99/99 99:99:99'是正確的日期嗎? –

+0

請看這裏http://stackoverflow.com/questions/3143070/javascript-regex-iso-datetime – Anujith

回答

4

這撥弄http://jsfiddle.net/jstoolsmith/Db3JM/我寫最近是一個更復雜的代碼,相關的正則表達式是:

/(?:(\d{4})([\-\/.])([0-3]?\d)\2([0-3]?\d)|([0-3]?\d)([\-\/.])([0-3]?\d)\6(\d{4}))(?:\s+([012]?\d)([:hap])([0-5]\d))?/i 
4

我會用Date構造函數,而不是測試該格式的日期:

var isValid = !!new Date('2012/11/14 14:28:12').getTime(); 

演示:http://jsfiddle.net/rwCeA/

作品在我所有的測試瀏覽器(Safari /鉻/火狐/ IE7 +)。 Date構造函數需要許多日期變體,但是您可以將其與正則表達式組合以強制某種格式。