如何使用JavaScript去除字符串中的重复字符
JavaScript 字符串去重实现
给定示例输入:let myString = "RReeeemmoovvvvvvee";
预期输出:Remove
适配需求的最简实现(去除连续重复字符)
直接使用正则匹配连续重复的字符,仅保留首个实例:
let myString = "RReeeemmoovvvvvvee"; const res = myString.replace(/(.)\1+/g, '$1') console.log(res) // 输出:Remove
- 逻辑说明:正则
/(.)\1+/g中,(.)捕获任意单个字符,\1+匹配和捕获内容一致的连续1个及以上字符,最终替换为首次捕获的字符,完全匹配预期输出。
扩展场景:全局字符去重(全串每个字符仅出现一次)
如果需求为整个字符串中每个字符仅保留第一次出现的结果,无论是否连续,可以用ES6 Set实现:
let myString = "RReeeemmoovvvvvvee"; const res = [...new Set(myString)].join('') console.log(res) // 输出:Remov
- 注意:该方案会移除所有非首次出现的重复字符,和你给出的预期输出不符,仅作为场景参考。
内容的提问来源于stack exchange,提问作者darwin
相关产品推荐
相关产品推荐

