Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
正则表达式通过javascript从字符串中删除重复字符_Javascript_Regex - Fatal编程技术网

正则表达式通过javascript从字符串中删除重复字符

正则表达式通过javascript从字符串中删除重复字符,javascript,regex,Javascript,Regex,我找到了一种使用正则表达式从字符串中删除重复字符的方法 function RemoveDuplicates() { var str = "aaabbbccc"; var filtered = str.replace(/[^\w\s]|(.)\1/gi, ""); alert(filtered); } 输出:abc 这很好用 但如果str=“aaabbcccabbcccccc”则输出为abcabc。 有没有办法只获取唯一的字符或删除所有重复的字符? 如果有什么办法,请

我找到了一种使用正则表达式从字符串中删除重复字符的方法

function RemoveDuplicates() {
    var str = "aaabbbccc";
    var filtered = str.replace(/[^\w\s]|(.)\1/gi, "");  
    alert(filtered);
}
输出:
abc
这很好用

但如果
str=“aaabbcccabbcccccc”
则输出为
abcabc
。 有没有办法只获取唯一的字符或删除所有重复的字符? 如果有什么办法,请告诉我。

像“这个,后面跟着某物和这个”这样的前瞻:

var str=“aaabbccccabbbcccc”;

console.log(str.replace(/(?=.*\1)/g,“”);//“abc”
这是一个老问题,但在ES6中我们可以使用。代码如下所示:

var测试='aaabbcccaaabbcccaaaaaaaaasa';
var result=Array.from(新集合(测试)).join(“”);

控制台日志(结果)顺序重要吗?换句话说,第一次出现的字符是否必须是您保存的字符?我希望在删除一个重复字符后,字符的顺序相同。我问迈克,但他还没有回答。你的解决方案就是我想要的,如果你需要保持秩序,
str.split(“”.reverse().join(“”)不是吗。。。字符串的顺序不一样。如果var str=“aaabbcccaaabbcccaaaaaaasa”;output=“bcsa”但我希望abcs@Lindrian:是的,那个,或者其他的方法