关于string.match进行正则匹配有个疑问

来源:2-12 字符串对象方法

Mr_bigshot

2016-09-12 17:21

console.log('$1a2b3c4d5e'.match(/\d\w\d/g))
['1a2','3c4']

为什么没有匹配2b3,4d5呢


string.replace()也是这样。所以我觉得应该是前面的匹配成功后对剩下的进行匹配

写回答 关注

4回答

  • qq_风起叶落_0
    2016-09-13 15:01:09
    已采纳

    应该与表达式的lastIndex属性有关,全局调用的话,从匹配内容的最后一个字符的下一个位置开始匹配

    偷吃萝卜的小...

    有什么方法能把2b3,4d5 也能匹配出来吗

    2020-11-03 16:38:32

    共 2 条回复 >

  • 慕容8334558
    2021-02-16 17:23:47

    一个数字和前面组了,还跟后面组吗?匹配到也没有意义啊,实际用也只需要用断言少捕获一个数字就可以了,要么给前面要么给后面,不可能这个数要处理两次吧?

  • 慕容8334558
    2021-02-16 17:23:28

    一个数字和前面组了,还跟后面组吗?匹配到也没有意义啊,实际用也只需要用断言少捕获一个数字就可以了,要么给前面要么给后面,不可能这个数要处理两次吧?

  • 啊啊啊啊123
    2016-09-17 15:33:09

    就好比找到一个符合的就咔嚓减掉 从断的地方接着向后找

    偷吃萝卜的小... 回复justin...

    我想不到什么方法能处理,您解决了吗,如何让2b3,4d5都匹配出来呢

    2020-11-03 16:37:31

    共 3 条回复 >

JavaScript正则表达式

JavaScript正则表达式教程,理解之后,正则表达式比你想象的简单

96812 学习 · 119 问题

查看课程

相似问题