in reply to pattern matching with brackets

I've found this, but can't get it to work :o(
$np = qr{ \( (?: (?> [^()]+ ) # Non-parens without backtracking | (??{ $np }) # Group with matching parens )* \) }x;
Can someone which more experience than me give me q uick example as to how to santch out what is *inside* some {} brackets, for example snatching out and array of the contents of multiple c functions in the same file. Thank you...