У меня есть строка:
a = "1;2;3;"
И я хотел бы разбить
так:
foreach (string b in a.split(';'))
Как я могу убедиться, что я возвращаю только 1
, 2
, 3
, а не "пустую строку"?
Если я разобью 1;2;3
, то получу то, что хочу. Но если я сплит 1;2;3;
, то получу лишнюю 'пустую строку'. Я принял предложения и сделал это:
string[] batchstring = batch_idTextBox.Text.Split(';', StringSplitOptions.RemoveEmptyEntries);
Однако, я получаю эти ошибки:
Error 1 Лучшее совпадение по перегрузке метода для 'string.Split(params char[])' имеет некоторые недействительные аргументы C:\Documents и Settings\agordon\My Documents\Visual Студия 2008\Projects\lomdb\EnterData\DataEntry\DAL.cs 18 36 EnterData
Ошибка 2 Аргумент '2': не может быть преобразован из 'System.StringSplitOptions'. на 'char' C:\Documents и Settings\agordon\My Documents\Visual Studio 2008\Projects\lomdb\EnterData\DataEntry\DAL.cs 18 68 EnterData
Сделайте снимок:
string test = "1;2;3;";
test = String.Join(",", test.TrimEnd((char)59).Split((char)59));
string test = "1;2;3;";
test = String.Join(",", test.TrimEnd(';').Split(';'));