Hi All,

   Request your help on how to remove duplicates in JSON.

Code:
import asdf;
import std.algorithm : map, filter, uniq;
import std.container.array;
import std.stdio : writeln;
import std.typecons : Tuple, tuple;
import std.array;

void main() {
string apidata = `{
"items":
  [
    { "name":"DEV", "Configuration":{"type":"D1"} },
    { "name":"DEV" },
    { "name":"DEV", "Configuration":{"type":"D1"} },
    { "name":"QAS", "Configuration":{"type":"Q1"} },
    { "name":"QAS", "Configuration":{"type":"Q1"} },
    { "name":"QAS" },
    { "name":"PRD", "Configuration":{"type":"P1"} },
    { "name":"PRD", "Configuration":{"type":"P1"} },
    { "name":"PRD" }
  ]
}`;

Array!(Tuple!(string, string)) data =
          parseJson(apidata)["items"]
          .byElement
          .map!(item => tuple(
                item["name"].get!string("default"),
                item["Configuration","type"].get!string("default")
            ));

    writeln(data[]);
}

Output: The above code produces the below output

[
 Tuple!(string, string)("DEV", "D1"),
 Tuple!(string, string)("DEV", "default"),
 Tuple!(string, string)("DEV", "D1"),
 Tuple!(string, string)("QAS", "Q1"),
 Tuple!(string, string)("QAS", "Q1"),
 Tuple!(string, string)("QAS", "default"),
 Tuple!(string, string)("PRD", "P1"),
 Tuple!(string, string)("PRD", "P1"),
 Tuple!(string, string)("PRD", "default")
]

Required Output
[
 Tuple!(string, string)("DEV", "D1"),
 Tuple!(string, string)("QAS", "Q1"),
 Tuple!(string, string)("PRD", "P1"),
]

From,
Vino.B


Reply via email to