Если у вас есть только одна пара скобок, то вы можете получить его непосредственно Regex.Match()
способом, как показано ниже:
string str = "example(string1,string2,string3) and test(string4)"
string[] params = Regex.Match(str, @"\(([^)]*)\)").Groups[1].Value.Split(',');
Но, если у вас есть несколько параметров с несколько брекеты, то вам необходимо получить MatchCollection
первый используя Regex.Matches()
метод, а затем перебирать ее в цикле, чтобы получить все параметры, как показано ниже:
string str = "example(string1,string2,string3) and test(string4)"
List<string> params = new List<string>();
MatchCollection collection = Regex.Matches(str, @"\(([^)]*)\)");
for (int i = 0; i < collection.Count; i++)
{
params.AddRange(collection[i].Groups[1].Value.Split(',').ToList());
}
Ваш вопрос действительно неясен, вы говорите, что у вас есть строка *, например 'example (string1, string2, string3, string4)' и хотите извлечь из нее параметры? – James
@ Джеймс, извините, теперь я отредактировал ответ – Tinwor
Каковы ваши ожидаемые результаты? – Kaf