Разбить строку, содержащую параметры командной строки, на строку [] в C #
У меня есть одна строка, содержащая параметры командной строки для передачи другому исполняемому файлу, и мне нужно извлечь строку [], содержащую отдельные параметры, так же, как C #, если бы команды были указаны в командной строке. Строка [] будет использоваться при выполнении другой точки входа сборок посредством отражения.
Есть ли стандартная функция для этого? Или есть предпочтительный метод (регулярное выражение?) Для правильного разделения параметров? Он должен обрабатывать строки с разделителями '' ', которые могут содержать пробелы правильно, поэтому я не могу просто разделить на' '.
Пример строки:
string parameterString = @"/src:""C:\tmp\Some Folder\Sub Folder"" /users:""[email protected]"" tasks:""SomeTask,Some Other Task"" -someParam foo";
Пример результата:
string[] parameterArray = new string[] {
@"/src:C:\tmp\Some Folder\Sub Folder",
@"/users:[email protected]",
@"tasks:SomeTask,Some Other Task",
@"-someParam",
@"foo"
};
Мне не нужна библиотека для разбора командной строки, просто способ получить String [], который должен быть сгенерирован.
Обновить: Мне пришлось изменить ожидаемый результат, чтобы соответствовать тому, что на самом деле генерируется C # (убрал лишние "в разделенных строк)