Синтаксический анализ списка строк

#c# #.net #string #split

#c# #.net #строка #разделение

Вопрос:

У меня есть строка, которая выглядит следующим образом:

Элемент1; Элемент2; Элемент3

но также может быть

Элемент1

Существует ли простой .net-метод для преобразования этого в список?

Ответ №1:

string.split это твой друг…

Ответ №2:

 var yourString = "Item1;Item2;Item3";

var result = new List<string>(yourString.Split(';'));
  

Комментарии:

1. Я думаю, Split что метод имеет перегрузку для передачи символа вместо массива, который будет: yourString.Split(';')

2. Он существует при первой проверке params

3. Microsoft делает документ msdn.microsoft.com/en-us/library/b873y76a.aspx говорится, что сигнатурой является параметр char[] . параметры — важная часть. Смотрите определение параметров msdn.microsoft.com/en-us/library/w5zay9db (VS.71).aspx . Вы действительно можете создать свою строку. Разделите(‘;’, ‘a’, ‘,’), если вы хотите разделить на несколько символов.

4. @Homam — Дох! Хорошее решение. Удаляю мой комментарий.

Ответ №3:

У LINQ также есть способ преобразовать массив в строку:

 var inputString = "item1;item2;item3";
var asList = inputString.Split( ';' ).ToList();
  

Ответ №4:

 var input = "Item1;Item2;Item3";
var list = input.Split(new[] {";"}, StringSplitOptions.None).ToList();
  

Ответ №5:

Вот как я бы это сделал:

 string[] arr = str.Split( new char[] { ';' } );
List<string> list = new List<string>( arr );