为什么分组捕获的是最后一个数字,不是第一个?

var str='1233216';
var reg=/(\d)+/;
console.log(str.match(reg));

为什么返回的数组第2项是6而不是字符串的地第一项1呢?
阅读 2.5k
1 个回答

+* 这类多项匹配,默认是贪婪匹配,加个问号就是懒惰匹配,二者的区别在于一个尽可能多的匹配,另一个尽可能少的匹配。

javascriptvar str='1233216';
var reg=/(\d)+?/;
console.log(str.match(reg));
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
1 篇内容引用
推荐问题