[OT] Finding matching braces with regular expressions

suvayu ali fatkasuvayu+linux at gmail.com
Sun Mar 18 22:46:17 UTC 2012


Hi,

I wasn't sure which list would be appropriate for this question, but
since there are many knowledgeable members on this one I thought I ask
here.

I'm trying to write a regular expression that matches function and class
definitions in C/C++ and defuns in lisp code. I intend to use it with
sed and `git blame'. My first attempt relies on indentation. That
obviously breaks rather often.

So I was wondering if there was a way to "count" the braces and
parentheses with regular expressions. If that is possible, I could
easily count and find the matching brace.

Here is an example use I was thinking of.

$ git blame -L "/[a-zA-Z0-9_*]\+ \+${method_name}/,/^}$/" filename.cxx

Thanks for any hints.

-- 
Suvayu

Open source is the future. It sets us free.


More information about the users mailing list