je ne parviens pas à scinder une chaîne en c # avec un délimiteur de "] [".
Par exemple, la chaîne "abc] [rfd] [5] [] [."
Devrait donner un tableau contenant;
abc
rfd
5
,
.
Mais je n'arrive pas à le faire fonctionner, même si j'essaye de RegEx, je ne peux pas obtenir de séparation sur le délimiteur.
EDIT: Essentiellement, je voulais résoudre ce problème sans avoir besoin d’une expression régulière. La solution que j'accepte est la suivante:
string Delimiter = "][";
var Result[] = StringToSplit.Split(new[] { Delimiter }, StringSplitOptions.None);
Je suis heureux de pouvoir résoudre cette question partagée.
Pour afficher à la fois l'utilisation de string.Split
et de Regex
:
string input = "abc][rfd][5][,][.";
string[] parts1 = input.Split(new string[] { "][" }, StringSplitOptions.None);
string[] parts2 = Regex.Split(input, @"\]\[");
string tests = "abc][rfd][5][,][.";
string[] reslts = tests.Split(new char[] { ']', '[' }, StringSplitOptions.RemoveEmptyEntries);
Une autre option:
Remplacez le délimiteur de chaîne par un seul caractère, puis divisez-le sur ce caractère.
string input = "abc][rfd][5][,][.";
string[] parts1 = input.Replace("][","-").Split('-');
Regex.Split("abc][rfd][5][,][.", @"\]\]");