当我跑步

var episode_pattern = /(?:EPISODE\:\s*\#)([0-9]*)/g;
console.log(episode_pattern.exec("EPISODE:  #3"));


我在比赛中得到了“ EPISODE:#3”和“ 3”。
但是,使用(?:我希望在matchs数组中只能得到“ 3”。

最佳答案

返回数组的第一个元素(元素0)始终是整个匹配的字符串。换句话说,如果您根本没有组,或者所有组都没有捕获,则返回元素0。如果添加组而未更改正则表达式,您仍将获得元素0中相同的整体匹配项,然后这些组从元素1开始。

09-20 00:19