Планируется построчно читать текстовый файл.
Строки будут такого же вида как аргументы, которые передаются приложению из командной строки (пример):
string1 "string2" string3 string4 "string5"
метод String.Split не подходит, т.к. в строке возможно будут пробелы которые разделять будет ненужно, такие строки выделяются кавычками.
Возможно есть какая-то нативная функция?
UPD. Решение нашел следующее:
Regex RegExObj = new Regex("\"([^\"]+)\"|([^\\s]+)");
string[] str = File.ReadAllLines(path);
foreach (string s in str)
{
  Match matchResults = RegExObj.Match(s);
  List<string> result = new List<string>();
  while (matchResults.Success)
  {
    if (matchResults.Groups[1].Value != "")
      result.Add(matchResults.Groups[1].Value);
    else
      result.Add(matchResults.Groups[2].Value);
    matchResults = matchResults.NextMatch();
  }
}