У меня есть одна строка, содержащая параметры командной строки, которые должны быть переданы другому исполняемому файлу, и мне нужно извлечь строку [], содержащую отдельные параметры, таким же образом, что и С#, если бы команды были указаны в команде -линия. Строка [] будет использоваться при выполнении другой точки входа сборки через отражение.
Существует ли для этого стандартная функция? Или существует предпочтительный метод (регулярное выражение?) Для правильного разделения параметров? Он должен обрабатывать строки с разделителями, которые могут содержать пробелы правильно, поэтому я не могу просто разделить на.
Пример строки:
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 [], который должен быть сгенерирован.
Обновить: мне пришлось изменить ожидаемый результат, чтобы он соответствовал тому, что на самом деле сгенерировано С# (удалено лишнее) в разделенных строках)