本题不是有3个ab么?+号贪婪尽可能多的话应该匹配3个呀

本题不是有3个ab么?+号贪婪尽可能多的话应该匹配3个呀

本题不是有3个ab么?+号贪婪尽可能多的话应该匹配3个呀 

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好, 首先,+贪婪尽可能多的这里你的理解是对的。

本题中的字符串“ababbab”不是连续的三个ab, 所以在匹配第一次匹配的是‘abab’遇到了不符合条件的'b, 结束了第一次匹配。

http://img1.sycdn.imooc.com//climg/5cf737d900017cc005190379.jpg

这里这可能有点绕,但是同学静下心来想一下, 还是可以理解的

如果帮助到了你, 欢迎采纳!

祝学习愉快~~~

  • 不对吧。 var str4="ababbab"; document.write(/ab+/.exec(str4)); 这个输出的是ab,不会是abab,ab+指的是b+,应该是b贪婪,不是ab+。 那么这个分组到底是个啥意思呢?(ab)+,难道是ab是个整体?先ab+匹配一遍,然后在把ab当整体再匹配一遍?
    2019-06-14 17:13:22
  • 这个分组的匹配先后顺序是什么样的?
    2019-06-14 17:32:10
好帮手慕慕子 2019-06-14 18:34:33

同学你好, 如下图所以的这段代码匹配规则, (ab)+表示将ab作为整体进行匹配, +表示匹配多个

http://img1.sycdn.imooc.com//climg/5d0375c7000199ee03830110.jpg

在页面中输出结果

http://img1.sycdn.imooc.com//climg/5d0375e800014ceb02290092.jpg

分组匹配的先后顺序就是小括号中的字母的顺序, 

exec方法的匹配是第一位字符开始匹配, 需要到满足条件的时候输出匹配内容,下一次匹配从上一次结束的位置开始匹配。简单理解就是, exec方法一直往后匹配,不会重头开始重新匹配。

同学可以结合示例, 自己下去测试一下代码,加深理解哦

如果帮助到了你, 欢迎采纳!

祝学习愉快~~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
2.组件化网页开发
  • 参与学习           人
  • 提交作业       1121    份
  • 解答问题       14456    个

本阶段在运用JS实现动态网页开发的基础上,带你深入理解企业开发核心思想,完成一个企业级网页的开发,体验前端工程师的成就感。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师