2009-09-22 164 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