mangoohohoho
2016-09-22 16:43
"1a2b3c4d5e".match(/\d\w\d/g),这样结果会匹配到1a2 3c4 ,但是匹配不到2b3和4d5了。这要怎么办?
直接上代码,不懂啥意思,刚学,方法太复杂,肯定有简单的。。。
用正则表达式匹配一定是有一定规律的。。。
match在全局匹配中也有lastIndex类似的属性,当检索到1a2时,指针移到了b的位置,自然匹配不到2b3了,当检索到最后时,lastIndex再变为0
"1a2b3c4d5e".replace(/(\d)(?=(\w\d))/g,'$1$2').match(/\d\w\d/g);
第一句是把一个字符串转换一个数组,因为加了一个“,”连接了2个数组,导致变成了字符串;
第二句是查看reg1里的元素;
第三句是测试reg1是否为数组;
那你就匹配a2b3和c4d5呗(/\w\d\w\d/g)
感觉看了可以 发现用正则表达式来修改更简单
JavaScript正则表达式
96812 学习 · 119 问题
相似问题