如何找到不重复的值并只保留它们

问题描述 投票:0回答:1

有一个包含值和两个分隔符的字符串。

873,cyan,magenta,yellow,red,4665,161,7421,W~873,cyan,magenta,yellow,black,161,2427,4665,W

您只需留下唯一的名称: 红色,7421~2427。

~
符号之前和之后的值的数量可能不同。 符号
~
可以重复多次。 示例:
873,cyan,magenta~yellow,black,4665,~161,7421,W~873,cyan,magenta~yellow,black,161,2427,4665,W

我需要输出:

empty~empty~7421~empty~2427

我不懂,但我很想学。

function remove_duplicates(arr) {
var arr = '873,cyan,magenta,yellow,red,4665,161,7421,W~873,cyan,magenta,yellow,black,161,2427,4665,W'.split('~');
    var seen = {};
    var ret_arr = [];
        for (var i = 0; i < arr.length; i++) {
        if (!(arr[i] in seen)) {
        ret_arr.push(arr[i]);
        seen[arr[i]] = true;
        }
    }
    return ret_arr.join('~').toString();
}
remove_duplicates();
javascript duplicates unique delimiter
1个回答
0
投票

任务条件很模糊。请提供任务链接或尝试更准确地描述为什么输出应该是 ->

empty~empty~7421~empty~2427

© www.soinside.com 2019 - 2024. All rights reserved.