@skynger

Как превратить строку в массив в C#?

Cтрока "["1", "2","3"]", нужно превратить её в массив ["1","2","3"], максимально с маленьким кодом на C#.
  • Вопрос задан
  • 235 просмотров
Решения вопроса 1
BasiC2k
@BasiC2k
.NET developer (open to job offers)
У Вас строка имеет json структуру.
Вот хороший пример нужного Вам преобразования.

string json = @"['Starcraft','Halo','Legend of Zelda']";
List<string> videogames = JsonConvert.DeserializeObject<List<string>>(json);
Console.WriteLine(string.Join(", ", videogames.ToArray()));
// Starcraft, Halo, Legend of Zelda

Не забудьте
using Newtonsoft.Json;
и подключить этот пакет в nuget
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
freeExec
@freeExec
Участник OpenStreetMap
Никак, надо писать свой парсер таких строк. Найти две скобки, разбить на группы кавычек, убедится, что между ними стоит по запятой, собрать это в массив строк.
Либо согласится, что это что-то похожее на json и парсить это как json каким-нибудь NewtonSoft.Json
Ответ написан
Комментировать
AgentSmith
@AgentSmith
Это мой правильный ответ на твой вопрос
регулярками
String re = ("\"(.+?)\"");
  MatchCollection match = Regex.Matches(text, @re);
  string[] IDs = new string[match.Count];
  for (int i = 0; i < match.Length; i++) {
    IDs[i] = match[i].Groups[1].Value; 
  }
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы