这段每4个数字加一个逗号的正则该怎么理解?-灵析社区

无敌奥特MEN

是从前往后查的,可以把正则的全局模式去掉实验下: const num='123456789' const str=num.replace(/(?=(\d{4})+$)/,',') console.log(str) // 1,23456789 /(?=(\d{4})+$)/g 匹配的位置是第1位(数字2的位置,后面有8个连续数字)和第5位(数字6的位置后面4个连续数字)。所以会在数字2和数字6的位置用逗号替换后面的数字,同时因为有前瞻断言不会消耗字符,相当于在2和6的位置插入了逗号。 ![](https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250103/f7b13f11729b37318adc69ac1831860e.png)

阅读量:1

点赞量:0

问AI