2014-02-27 83 views
2

每一個新的句子時的日期開始,所以我想拆就最新的正則表達式的文本的Javascript正則表達式驗證日期的文本文件

我用這個表達式(這在我的信念是正確的):

var date = /(\d{2})-(\d{2})-(\d{4})/; 

日期總是以這種格式出現,永遠不會是別的。文本文件按此順序出現:

10-05-13 16:14:49:Wence:嘿,你好嗎?

10-05-13 16:14:52:Bas:沒什麼。你呢?

此代碼返回null,這是非常奇怪的,我無法找到我做錯了,因爲沒有太多錯過。

var chat = "10-05-13 16:14:49: Wence: Hey how you're doing? 

10-05-13 16:14:52: Bas: Nothing much. How about you?" 

var date = /(\d{2})-(\d{2})-(\d{4})/; 
document.write(chat.match(date)); 

這個,還有這個:

var chat = "10-05-13 16:14:49: Wence: Hey how you're doing? 

    10-05-13 16:14:52: Bas: Nothing much. How about you?" 

var date = /(\d{2})-(\d{2})-(\d{4})/; 
document.write(chat.split(date)); 

都返回NULL。

回答

3

\d{4}正在尋找四位數字。但是,這一年保存爲兩位數字。

嘗試:

var date = /^(\d\d)-(\d\d)-(\d\d)/; 
+0

謝謝,非常愚蠢無法看到。儘管如此,分割函數並不會分割整個日期,而是分割自己的日期。它返回:「10,05,13」而不是「,10-05-13」, – user3263723

0

你檢查2號,其次是一個破折號,接着又2號,破折號,然後4個數字。日期的格式不同。您在正則表達式中使用的是4位數字,但在實際日期中只有2位數字。更改代碼,以反映工作

/(\d{2})-(\d{2})-(\d{2})/