Per farlo in .NET 2.0 (senza LINQ), ad es. per ReportingServices senza scrivere una funzione per esso:
C#
string a = "", b = "b", c = "", d = "d", e = "";
string lala = string.Join("/",
string.Join("\u0008", new string[] { a, b, c, d, e }).Split(new char[] { '\u0008' }, System.StringSplitOptions.RemoveEmptyEntries)
);
System.Console.WriteLine(lala);
VB.NET
Dim a As String = "", b As String = "b", c As String = "", d As String = "d", e As String = ""
Dim lala As String = String.Join("/", String.Join(vbBack, New String() {a, b, c, d, e}).Split(New Char() {ControlChars.Back}, System.StringSplitOptions.RemoveEmptyEntries))
System.Console.WriteLine(lala)
Ciò presuppone che il backspace personaggio non si verifica nelle stringhe (di solito dovrebbe essere vero, perché non puoi semplicemente inserire questo personaggio con la tastiera).
fonte
2016-09-14 08:40:03
È 'Valori' a' stringa' come '" foo | bar || baz ||| baf "'? – Michael
E ora inserisco un valore come "echo 'foo' | sed '/ foo/d;'" e si interrompe orribilmente. –