Logo

Programming-Idioms

This language bar is your friend. Select your favorite languages!

Idiom #362 Create delimited list

From list a, create the text s specifying the contents of a, such that items are separated by delimiter d and items containg 1 or more spaces are quoted with quote character q.
Example: "A "," B"," C ",D,E,F

s = a.map{_1.include?(" ") ? q + _1 + q : _1 }.join(d)
String s = a.stream()
    .map(x -> {
        if (!x.contains(" ")) return x;
        return q + x + q;
    })
    .reduce((x, y) -> x + d + y)
    .get();
classes
  a.Delimiter := d;
  a.QuoteChar := q;
  a.StrictDelimiter := False;
  a.AlwaysQuote := False;
  s := a.DelimitedText;

New implementation...
< >
Bart