为什么
"abcabcabc".match(/(abc){3}/);
返回两个条目["abcabcabc", "abc"]
?两个" abcabcabc"和" abc"
类似地,
["1234", "1234"]
答案 0 :(得分:0)
每个正则表达式都有一个隐含的捕获组,它存储在结果0中。
第二个结果来自您的捕获组(abc)
。大多数regexp实现仅保留该捕获组的最后一个匹配。
答案 1 :(得分:0)
第一个捕获小组
(abc){3}
{3}
量词 - 准确匹配3次重复捕获组仅捕获最后一次迭代。如果您对数据不感兴趣,请在重复组周围放置捕获组以捕获所有迭代或使用非捕获组。
abc
字面匹配字符abc
(区分大小写)
所以第一个值是整个匹配,即"abcabcabc"
。
第二个值是(abc)
捕获的最后一次迭代,即"abc"
。