Regex for date的计算结果为true,即使字符错误

Regex for date evaluates to true even with wrong characters

本文关键字:字符 错误 true date for 计算 结果 Regex      更新时间:2023-09-26

这可能很容易,但是我对正则表达式很陌生,所以请原谅我的愚蠢。

我用jQuery验证插件使用正则表达式评估日期。这一切都很好。但是,如果用户使用"斜杠"而不是"点"来分隔,它的计算结果也为true。

$.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.

点是正则表达式中的任意字符。将所有点替换为转义点:'.