2013-01-22 61 views
0

是否有任何正則表達式模式存儲,我可以找到像dd.MM.yyyy這樣的模式,或者您可以幫助我?日期格式的正則表達式模式dd.MM.yyyy

我使用數據驗證數據註釋:

[RegularExpression(@"pattern", ErrorMessage = "incorrect date format")] 
public string MyDate { get; set; } 
+0

您使用哪種語言?什麼平臺?你究竟在努力實現什麼?請張貼一些代碼示例,以便我們可以幫助那些人。 – Oded

+0

對不起,認爲正則表達式對於所有語言都是一樣的。現在會添加一些信息 – Sergejs

+0

正則表達式有不同的「風味」,它們不是統一的(雖然大多數_basic_是)。你能發佈_examples_的輸入和預期結果嗎? – Oded

回答

0

你總是可以嘗試使用正則表達式工具,例如像「使用RegexBuddy」或「拉德軟件正則表達式設計師」。

但是您想要的正則表達式可能是這樣的:\ d {2}。\ d {2}。\ d {4}?

Grtz, 沃特

+0

謝謝,但我懷疑你的模式將適合。它會接受99.99.9999。這不會被識別爲日期 – Sergejs

+3

您需要轉義'.',否則_any_字符將匹配。 – Oded

0

按照ECMAScript規範,一個快速的答案可以是

^(\ d {2})。\ d {2}。(\ d {4})$

+1

99.99.9999將不是有效日期 – Sergejs

+2

此外,你忘了逃避這些點。 –

0

可以使用財產以後這樣的:

\ d {1,2} \ \ d {1,2} \(19 \ d \ d | 20 \ d \ d)

+0

對不起,但不,我不能 – Sergejs

0

的。不檢查短月份和閏年的模式:

string pattern = @"(0[1-9]|[12][0-9]|3[01])\.(0[1-9]|1[012])\.(19|20)\d\d" 
+2

它匹配'31.02.2013'。 –

+0

你是對的...... :(但我沒有看到正則表達式,檢查月份和閏年 – Sergejs

+0

這就是爲什麼使用正則表達式來驗證日期不是一個好主意。您是否閱讀過由Oded鏈接的帖子? –