Мой вопрос может показаться странным, но я придерживаюсь этого сценария.
Мне нужно проанализировать формулу Excel (получая ее из Office.Interop.Excel
) и получить параметры из формулы (количество параметров может варьироваться)
Есть несколько случаев для рассмотрения.
E.g.:
1. myformula("param1", "param2")
2. myformula("param1", A2)
3. myformula("param1", , "param3")
4. myformula(A1, , "param3")
5. myformula("param1, has commas in it", "param2")
Есть ли более хороший способ разобрать это, в отличие от наличия нескольких ветвей if (особенно если учесть, что строковый массив смешан, то есть некоторые параметры имеют кавычки, а другие параметры являются ссылочными параметрами)?
Использование string split(',')
не кажется слишком полезным, поскольку у меня может быть запятая в самом параметре.
Я тоже пробовал
string[] paramArray = new string[]{(parameters)}
где parameters = "\"param1\", \"param2\"";
но, похоже, это тоже не сработало (не будет работать вообще, если у меня есть пустой параметр, но это другой случай).
Мой результат должен быть чем-то вроде массива (или списка, или любой другой коллекции), который будет содержать все параметры, и если у параметра нет кавычек, то мне нужно будет его оценить.
Буду признателен за любую помощь.