I think just about everyone has a template engine or two.
Though yours seems to have embodied quite a bit of work, I don't think I'll be using it.
Seems like you didn't take into account the fact that what you just created is basically XSLT, which already has a class built in with PHP.
I mean, a loop condition to be declared as part of an HTML file? I think your class would cause more headache than anything since you are doubling up and recreating what doesn't need to be recreated.
In fact, you are still essentially coding inside the HTML, and thus creating yet another layer of debugging and compatability issues.
My template parser is very simple, it allows me to read and write variables to and from the GLOBAL scope and constants. It's not glorious and only took me a day to write. But, it does a great job of parsing out data into HTML templates and building very complex pages very rapidly without adding any additional abstraction or syntax hassles.
I would never want to create or use an object such as yours since I see no benefit and only more headache than it's really worth, especially since XSLT already does all those functions and more from XML files where that kind of procedures should be kept.
Nice work though and you had a viscious regex in there, musta took a week to get that one just right.