Использование RegEx для баланса скобок

Я пытаюсь создать выражение .NET RegEx, которое правильно сбалансирует мои скобки. У меня есть следующее выражение RegEx:

func([a-zA-Z_][a-zA-Z0-9_]*)\(.*\)

Строка, которую я пытаюсь сопоставить, выглядит так:

"test -> funcPow((3),2) * (9+1)"

Что должно произойти, так это то, что Regex должен сопоставить все от funcPow до второй закрывающей скобки. Он должен остановиться после второй закрывающей скобки. Вместо этого, он сопоставляет все до самой последней закрывающей скобки. RegEx возвращает следующее:

"funcPow((3),2) * (9+1)"

Он должен возвращать следующее:

"funcPow((3),2)"

Любая помощь в этом вопросе будет принята с благодарностью.

30
задан Icemanind 26 October 2011 в 03:06
поделиться