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

如何用正则匹配连续重复的字符串片段?

如何用正则匹配连续重复的字符串片段?

MM们 2018-09-06 10:18:49
有一个字符串,里面都是用',(逗号)'隔开的数字,只有一个数字出现了1次,其他所有数字都出现了2次。我如何通过正则匹配或者替换的方式,提取出这个只出现过1次的数字。例如:1.var一个字符串str和正则表达式re  var str = '112,112,1,1,3,3,234,234,4,22,22';  var re;2.如何通过正则匹配或者替换,改变str的值为'4'  str = str.match(re);   或者   str = str.replace(re,'');//想让str值为'4'
查看完整描述

1 回答

?
holdtom

TA贡献1805条经验 获得超10个赞

正则匹配需要视实际情况而定,比如说:

var pattern1 = /\d+(?!,)$/g;
var pattern2 = /\d+$/g;
var str = '112,112,1,1,3,3,234,234,4';
console.log(str.match(pattern2));  //["4"]或者直接这样:str.replace(/\d+,/g, '');  //'4'更改题目后:
如果说其他所有数字都出现了2次都是挨着的,楼下的写法OK。str += ',';str.replace(/(d+,)1+/g, '').replace(/,$/, '');
如果不挨着,就不行,那就先处理下
var arr = str.split(',');
arr.sort();str = arr.join(',');str += ',';str.replace(/(d+,)1+/g, '').replace(/,$/, '');

我这个总结或许能帮到一下:
js正则表达式


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

添加回答

举报

0/150
提交
取消
微信客服

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

帮助反馈 APP下载

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

公众号

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