Stefan Lodders: Parsen eines Strings mit Verschachtelung

Hallo.

Ich würde gerne mit PHP einen String der Form:

$string = "<table><table>
{DISPLAY "NUTZER","
<tr>
 <td>{NAME}</td>
 <td>{EMAIL}</td>
</tr>
"}
</table>";

parsen.
Und zwar nach folgendem Muster:
Zurückgeliefert werden soll einmal:
"{DISPLAY "NUTZER","
<tr>
 <td>{NAME}</td>
 <td>{EMAIL}</td>
</tr>
"}"
also alles, was in der "Hauptklammer" steht und (in einem zweiten Schritt?), die untergeordneten Klammerinhalte (also "{NAME}" und "{EMAIL}").

Wurde gerne preg_match(_all) dafür benutzen, aber ich habe es bisher noch nicht geschafft eine passende "regular expression" zusammen zu basteln.

Das Problem ist ja eigentlich genau das, was PHP, C und Co. täglich millionenfach lösen.

Wäre auch schon für Teillösungen dankbar :).

Gruss, Stefan