0

我正在使用节点 v.0.8.8。

在以下示例中,为什么url没有与/([\w-]+)正则表达式匹配?这是一个错误还是我做错了什么?

var patterns = [
    '/([\w-]+)',
    '/.*'
],
    url = '/asdf';

for (var pattern in patterns) {
    var re, match;

    re = new RegExp('^' + patterns[pattern] + '$');

    if ((match = re.exec(url))) {
        console.log(url + ' matched: ' + patterns[pattern])

        // break the loop since we've already found the first match
        return false;
    }
    else{
        console.log(url + ' NOT matched: ' + patterns[pattern])
    }
}
4

1 回答 1

6

由于您从字符串文字创建正则表达式,因此您需要转义反斜杠:

'/([\\w-]+)'
于 2012-10-10T07:40:40.650 回答