2014-07-03 8 views
0

這可能很容易,但是我對於正則表達式很新,所以請原諒我的愚蠢。正則表達式的日期評估爲真即使錯誤字符

我使用正則表達式評估jQuery驗證插件的日期。這一切都很好。但是,如果用戶使用斜槓代替點分離,它也評估爲真。

$.validator.addMethod(
     "deDateTime", 
     function (value, element) { 
      //dd.MM.yyyy HH:mm 
      var re = /^\d{2}.\d{2}.\d{4} \d{2}:\d{2}$/; 
      return (this.optional(element) && value == "") || re.test(value); 
     }, 
     "Bitte geben sie ein Datum im Format 'dd.MM.yyyy HH:mm' an." 
     ); 

實施例:

re.Test("12.10.2014 18:00"); //True as it is supposed to be 
re.Test("12/10/2014 18:00"); //Also true. Shouldn't be. 

回答

2

的點是在正則表達式any character。用轉義點替換所有的點:\.

+0

噢。很容易。謝謝! – davidf

+1

建議:瀏覽我鏈接到的網站(幾十分鐘)。 –