为了账号安全,请及时绑定邮箱和手机立即绑定

javascript中字符串split方法的拆分逻辑?

javascript中字符串split方法的拆分逻辑?

隔江千里 2018-09-21 16:39:21
"aaabbbcccdeefff".split(/(\w)\1+/)这句代码的输出结果为:["", "a", "", "b", "", "c", "d", "e", "", "f", ""]但是:"aaabbbcccdeefff".replace(/(\w)\1+/g,"")输出结果为:"d"所以按照我的理解,拆分结果应该为:[d]那里出问题了呢?
查看完整描述

1 回答

?
GCT1015

TA贡献1827条经验 获得超4个赞

作为 split 参数的正则表达式如果包换捕捉, 则捕捉的结果会被拼在结果数组中.
所以结果中会出现 a,b,c,e,f. 因为他们是(\w)捕捉的结果, ""则是由于每次迭代时分割符出现在开始或结尾则会产生一个""字符.

如果想达到预期的效果输出 [d], 可以这样做:

"aaabbbcccdeefff".replace(/(\w)\1+/g, '').split('')


查看完整回答
反对 回复 2018-09-21
  • 1 回答
  • 0 关注
  • 576 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号