2009-09-22 31 views
0

我有一個正則表達式的問題,我需要一些建議。我正在使用驗證JSP上的輸入字段的jquery插件。我正在使用日期驗證。它一切正常,但這個字段不是必需的,並沒有按要求標記。當用戶點擊提交時,它會在日期輸入字段上顯示警告,因爲空字符串與日期的驗證不匹配。我需要某種方式來說在正則表達式中沒有任何東西或日期是有效的。正則表達式 - 日期格式或未指定/空

這裏是日期的正則表達式;是否有任何方式把 「或空」 到這也:

"date":{ 
      "regex":"/^[0-9]{1,2}\-\[0-9]{1,2}\-\[0-9]{4}$/", 
      "alertText":"* Invalid date, must be in MM-DD-YYYY format"}, 

預先感謝

回答

0

嘗試:

/^([0-9]{1,2}\-\[0-9]{1,2}\-\[0-9]{4})?$/ 

然後它會在有效日期提供,或字段爲空相匹配。

+0

這工作,感謝一百萬! – Caroline 2009-09-22 14:56:27

+0

不客氣,我很樂意提供幫助。 :) – 2009-09-22 15:11:51

0

(^ [0-9] {1,2} - [0-9] {1,2 } - [0-9] {4} $ |^$)

+0

感謝您的快速回復。當我嘗試它不會進行驗證,螢火蟲顯示語法錯誤(^ [0-9] {1,2} - [0-9] {1,2} - [0-9] {4 } $ |^$) – Caroline 2009-09-22 14:29:25

+0

這是一個標準的正則表達式「更改」語法(a | b)表示匹配a或b。所以不知道爲什麼你會得到一個語法錯誤。 – ennuikiller 2009-09-22 14:51:32

+0

我要麼,我已經嘗試了一些這樣的選擇,我得到了同樣的問題。我懷疑jquery插件在期望的方面很有趣,可能根本不喜歡「或」。感謝您的幫助! – Caroline 2009-09-22 15:33:56