美文网首页
RegExp.prototype.exec() & String

RegExp.prototype.exec() & String

作者: 蘑菇酱960903 | 来源:发表于2018-04-03 16:55 被阅读0次

https://blog.csdn.net/liangklfang/article/details/49246135

//全局匹配下
        var reg = /(\d)/g;
        do {
            m = reg.exec('123');
            console.log(m);
        } while (m)
        console.log('123'.match(reg));
//exec输出
Array(2)0: "1" 1: "1" groups: undefined index: 0 input: "123" length: 2
Array(2)0: "2" 1: "2" groups: undefined index: 1input: "123" length: 2 
Array(2)0: "3" 1: "3" groups: undefined index: 2 input: "123" length: 2 
//match输出
(3) ["1", "2", "3"]
0:"1"
1:"2"
2:"3"
length:3

结论:
在全局匹配模式下,match返回一个所有匹配项的数组,而exec只会返回第一个匹配项数组,数组内容包括匹配项内容,第一个捕获组.....第n个捕获组,匹配的位置index,所验证匹配的字符串input,长度length。
在非全局匹配模式下,match返回第一个匹配项数组,exec也返回第一个匹配项数组,两者内容一致,数组包括匹配项内容,第一个捕获组.....第n个捕获组,匹配的位置index,所验证匹配的字符串input,长度length

相关文章

网友评论

      本文标题:RegExp.prototype.exec() & String

      本文链接:https://www.haomeiwen.com/subject/tnlchftx.html