string s="([A-z]{1,})-([a-z]{1,})"
ВЫХОД: должно привести массив, содержащий:
([A-z]{1,})
([a-z]{1,})
string s="([A-z]{1,})-([a-z]{1,})"
ВЫХОД: должно привести массив, содержащий:
([A-z]{1,})
([a-z]{1,})
Вы можете использовать регулярное выражение, которое соответствует начальной и конечной скобки и все между ними:
string[] output =
Regex.Matches(s, @"\([^\)]+\)+")
.Cast<Match>()
.Select(x => x.Value)
.ToArray();
Большое вам спасибо! – user239151
Если вы хотите разделить строку всегда на «-», то вы можете напрямую использовать строку не расколоть никакой потребности Regex, потому что Regex является дорогостоящим по сравнению с строковыми операциями
string values[]=s.split('-');
** Внимание: ** '[Az]' является ** ошибкой. ** Это * не * эквивалентно '[A-Za-z]'. ** Никогда не используйте '[A-z]' в регулярном выражении! ** –