Разделить строку по полному разделителю строк - PullRequest
1 голос
/ 03 февраля 2011

Мне нужно разбить строку, например, AAA @ AAA _ @ # @ BBBBBB @ # @ CCCCCC, используя в качестве разделителя полную строку " _ @ # @ _". Результат, который я ищу:

[0] AAA @ AAA

[1] * * 1 010

[2] BBBBBB

[2]

[3] CCCCCC

Я делаю следующее:

char[] sep = FIELD_SEPARATOR.ToCharArray();
ArrayList result = new ArrayList();
string[] fields = line.Split(sep);

где FIELD_SEPARATOR - строка "_ @ # @ " Дело в том, что я получаю 2 записи для первого поля и из них удаляется символ "@".

[0] AAA

[1] AAA

...

Есть ли способ сделать это? Я использую .NET Framework 1.1

Заранее спасибо!

Ответы [ 4 ]

6 голосов
/ 03 февраля 2011

Это также должно работать для вас:

string[] bits = Regex.Split("AA@AAA_@#@BBBBBB@#@CCCCCC", "@#@");
6 голосов
/ 03 февраля 2011

Это не работает?

string[] fields = line.Split(new string[] {"@#@"}, StringSplitOptions.None);
4 голосов
/ 03 февраля 2011

если

string oldstring="AAA@AAA_@#@BBBBBB@#@CCCCCC";

тогда

string[] parts = System.Text.RegularExpressions.Regex.Split(oldstring,"@#@");

Это даст,

части [0] = AAA @ AAA_

части [1] = BBBBBB

части [2] = CCCCCC

Будет ли этого достаточно ...........

0 голосов
/ 03 февраля 2011

Чтобы быть более правильным

line.Split(new string[] { "@#@" }, StringSplitOptions.None)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...