关于去除字符串中连续重复字符的两种方法

本文介绍了两种高效去除字符串中连续重复字符的方法:一种是利用正则表达式匹配并选择首个字符,另一种是通过数组逐个比较并存储不重复的字符。这两种方法均可用于清理数据或文本预处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

去除字符串中连续重复字符的两种方法

一、使用正则表达式

quChong("111222333555");
function  quChong(str){
let arr=[];
let obj=str.match(/(\d)\1*/g);//这里以数字为例
for(let i=0;i<obj.length;i++){
let newArr=obj[i].split("");
arr.push(newArr[0]);
}
let s0=arr.toString().replace(/,/g,"");
console.log(s0);
}//输出1235

这种方法首先匹配到连续重复的字符(在本例中是111,222,333,555),再将每一项分割成单独的所需的项;

二、利用数组

function removeRepetition(str) {
		        let result = "",  //空的结果
		        strA =str.split(""), //将字符串进行分割,变成数组
		        strB = [],  //创建空的字符串
		        j=0;
	for(let i=0;i<strA.length;i++){   //对分割好,已变成数组的字符串A进行循环
                 if(strA[i] !=strB[j]){     //判断循环到的A的元素和B的最后一位元素是否相等(因为B是一个空数组)
		         j++;              //j一定要先加1
		         strB[j]=strA[i];
		      }
		      }
		            result=(strB.toString()).replace(/,/g,"");         
		            return result;
		      }
	console.log(removeRepetition("aabbvvaa"));//输出abva

这里是先将字符串分割,进行判断后再依次加入到一个新数组当中;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值