0

我的 javascript 在它们应该通过时调用无效扩展是一个问题。我在服务器端代码中使用了这个正则表达式,它对我来说很好。我验证了 reg 表达式检查的值也是有效的。

我是否在 javascript 中声明 reg 表达式错误?

 var ck_name = /^.+\.((gdf)|(GDF))$/;
 var chldValue = chld.value.substring(chld.value.length - 4, chld.value.length);
    alert(chldValue);

    if (!ck_name.test(chldValue)) {
        errors[errors.length] = "File is NOT a GDF file";
}
4

1 回答 1

3

首先,^.+是不必要的和浪费时间的。

其次,您的字符串只有四个字符长,而您正在寻找的......至少是五个字符长。因此,它们永远不会匹配。

第三,正则表达式是多余的。

最后,您的代码应该是:

if( chld.value.substr(chld.value.length-4).toLowerCase() != ".gdf")
    errors.push("File is NOT a GDF file");
于 2012-06-11T20:44:05.043 回答