Подтвердить что ты не робот

String.split - с помощью множественного символьного разделителя

У меня проблема с разбиением строки в С# с разделителем "] [".

Например, строка "abc] [rfd] [5] [,] [."

Должен выдавать массив, содержащий:
а
RFD
5
,
,

Но я не могу заставить его работать, даже если я попробую RegEx. Я не могу разбить разделитель на разделитель.

EDIT: По сути, я хотел решить эту проблему без необходимости в регулярном выражении. Решение, которое я принимаю,

string Delimiter = "][";  
var Result[] = StringToSplit.Split(new[] { Delimiter }, StringSplitOptions.None);

Я рад, что смогу решить этот разделенный вопрос.

4b9b3361

Ответ 1

Чтобы показать как string.Split, так и Regex использование:

string input = "abc][rfd][5][,][.";
string[] parts1 = input.Split(new string[] { "][" }, StringSplitOptions.None);
string[] parts2 = Regex.Split(input, @"\]\[");

Ответ 2

string tests = "abc][rfd][5][,][.";
string[] reslts = tests.Split(new char[] { ']', '[' }, StringSplitOptions.RemoveEmptyEntries);

Ответ 3

Другая опция:

Замените разделитель строк на один символ, затем разделите на этот символ.

string input = "abc][rfd][5][,][.";
string[] parts1 = input.Replace("][","-").Split('-');

Ответ 4

Regex.Split("abc][rfd][5][,][.", @"\]\]");