字符串的匹配

    // 字符串的正则匹配,既可以使用 RegExp.exec() 方法,也可以使用 String.match() 方法
    var str = "cat, bat, sat, fat";
    var pattern = /.at/;
    var matches = str.match(pattern);
    console.log(matches);                           // 输出 ["cat", index: 0, input: "cat, bat, sat, fat"]
    var pamatches = pattern.exec(str);
    console.log(pamatches);                         // 输出 ["cat", index: 0, input: "cat, bat, sat, fat"]

    var patterng = /.at/g;
    var matchesg = str.match(patterng);
    console.log(matchesg);                          // 输出 ["cat", "bat", "sat", "fat"]
    var pamatchesg = patterng.exec(str);
    console.log(pamatchesg);                        // 输出 ["cat", index: 0, input: "cat, bat, sat, fat"]
    // 这是因为在 RegExp.exec() 方法中,即使设置了 g 标志,也只会返回一个匹配项的信息。但是,g 会导致每次调用 exec 方法时,不重置指针,会在字符串中查找新的匹配项,无 g 标志,则每次都会返回第一个匹配项信息。

猜你喜欢

转载自blog.csdn.net/Jackie_Rose/article/details/54860877