[TxMt] Re: Search & replace regex question

Hans-Jörg Bibiko bibiko at eva.mpg.de
Thu Sep 4 07:30:32 UTC 2008

> OK. Maybe you remember Thomas Aylott and I fiddled around to
> implement a command which is able to select/find balanced HTML/XML  
> tags.
> Finally we found a solution but it makes usage of many many lines of
> source code (the command should be in the TM trunk experimental).
> Some while ago I read Oniguruma's RE.txt carefully. This kind of
> match is supported natively by Oniguruma. It is called 'back
> reference with nest level'.
> Example 1:
> I have a string: "<foo>f<foo>b<bar>123<bar>456</bar></bar>bb</foo>f</
> foo>"
> and this regexp (please don't be frightened ;):
> (?<element>\g<stag>\g<content>*\g<etag>){0}(?<stag><\g<name>\s*>){0}(?
> <name>[a-zA-Z_:]+){0}(?<content>[^<&]+(\g<element>|[^<&]+)*){0}(?
> <etag></\k<name+1>>){0}\g<element>

Stop. I've just tried out the regexp with TM and IT ALREADY WORKS ;-O
[I could swear that I tried it out some while ago]

I believe I did an error in reasoning. This has nothing to do with the  
replacement format string. All these nested stuff is only relevant  
within the regexp.


More information about the textmate mailing list