Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 正则表达式在Firefox中工作,但在Chrome中不工作_Javascript_Regex - Fatal编程技术网

Javascript 正则表达式在Firefox中工作,但在Chrome中不工作

Javascript 正则表达式在Firefox中工作,但在Chrome中不工作,javascript,regex,Javascript,Regex,我使用的正则表达式应该只允许数字、字母、逗号、下划线和连字符: var test = "ABCD_3_8.csv"; var checkFileNameValidity = false; try { var re = /^[a-zA-Z0-9._-]+$/g; var match; while (match = re.exec(test)) { var resultText = match[1] || match[2]; checkFil

我使用的正则表达式应该只允许数字、字母、逗号、下划线和连字符:

var test = "ABCD_3_8.csv";
var checkFileNameValidity = false;

try {
    var re = /^[a-zA-Z0-9._-]+$/g;
    var match;
    while (match = re.exec(test)) {
        var resultText = match[1] || match[2];
        checkFileNameValidity = true;
    }
} catch (e) {
    alert(e);
}

if (checkFileNameValidity == false) {
    alert("Invalid File Name");
    return;
}

这段代码在Firefox中运行良好,但在Chrome中不起作用。这是为什么?我如何修复它?

它不应该在任何地方工作,因为您有这个正则表达式:

var re = /^[a-zA-Z0-9._-]+$/g; // same as /^[\w.-]+$/g
然后在var resultText=match[1]| | match[2]中使用2个捕获的组


即使您的正则表达式中没有任何正则表达式。

只需解释一下您正在使用resultText=match[1]| match[2]尝试什么