Doug Doug - 2 months ago 20
Vb.net Question

String.Join method that ignores empty strings?

The VB.NET method

String.Join(separator, stringArray)
is similar to PHP's implode, but any null elements in the array are replaced with an empty string, so thatc:

Dim myArray() as String = { "a", null, "c" }
Console.WriteLine(String.Join(", ", myArray));
// Prints "a, , c"


Is there a simple way to concatenate a set of strings with a separator that ignores empty strings?

I don't necessarily need to use arrays or String.Join or anything else. I just need the following transformations:

("a", "b", "c") --> "a, b, c"
("a", null, "c") --> "a, c"

Answer
String.Join(",", myArray.Where(Function(s) Not String.IsNullOrEmpty(s)))
Comments