Ich habe Probleme beim Teilen eines Strings in c # mit einem Trennzeichen von "] [".
Zum Beispiel die Zeichenfolge "abc] [rfd] [5] [,] [."
Sollte ein Array ergeben, das enthält;
abc
rfd
5
,
.
Aber ich kann es scheinbar nicht zum Laufen bringen, selbst wenn ich RegEx versuche, kann ich das Trennzeichen nicht aufteilen.
EDIT: Im Wesentlichen wollte ich dieses Problem lösen, ohne dass ein regulärer Ausdruck erforderlich ist. Die Lösung, die ich akzeptiere, ist:
string Delimiter = "][";
var Result[] = StringToSplit.Split(new[] { Delimiter }, StringSplitOptions.None);
Ich bin froh, diese geteilte Frage lösen zu können.
Antworten:
Um beides
string.Split
und dieRegex
Verwendung zu zeigen :quelle
StringSplitOptions.None
Overinput.Split(new string[] { "][" })
?String.Split("[]".ToCharArray())
dies würde durch beide [und] getrennt aufgeteilt. Zum Beispiel: Hallo [Welt] Es ist [Ich! wäre: Hallo Welt, es ist ich!quelle
Andere Option:
Ersetzen Sie das Zeichenfolgenbegrenzer durch ein einzelnes Zeichen und teilen Sie es dann auf dieses Zeichen auf.
quelle
string input = "abc][rf-d][5"
. Das "-" in "rf-d" wird als Trennzeichen abgefangen. Siehe stattdessen die oben akzeptierte Antwort.Dim Levels As New List(Of String)(newSelectedTask.Replace(LevelDelimter, Chr(13)).Split(Chr(13)))
quelle