Problem mit der RegExp-Instanznutzung der exec()-Methode – Stapelüberlauf
phpcn_u1582
phpcn_u1582 2017-05-18 11:01:08
0
2
849
var text = "cat, bat, sat, fat";
var pattern2 = /.at/g;
var matches = pattern2.exec(text);
console.log(matches.index);   //0
console.log(matches[0]);   //cat
console.log(pattern2.lastIndex);   //3
matches = pattern2.exec(text);
console.log(matches.index);   //5,为什么是5,不应该从fat开始吗?
console.log(matches[0]);   //bat
console.log(pattern2.lastIndex);   //8

Warum sollten wir mit Fledermaus statt mit Fett beginnen?

phpcn_u1582
phpcn_u1582

Antworte allen(2)
阿神

不是啊,是一个一个往后走的,第一轮匹配到cat中的at,index改为cat后面的逗号开始的,为3,然后继续往后走匹配到bat中的at,index是5.就像刚开始的0一样。

为情所困

//5,为什么是5,不应该从fat开始吗?
你是不是想问应该从cat开始。。
如果是这样子的话,把正则最后的g去掉就行了

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage