Hi,
Ja sicher, das bestreite ich gar nicht. Hast Du Dir das ausgedacht oder mußt Du mit dem Format leben?
Ich hab an den Format mitgearbeitet :=)
Das Nebenproblem ist: Die Delphi-Gruppe hat es schon umgesetzt...Da kann ich mit Perl ja dann wohl nicht hinten anstehen, oder? :)
<include type="query" value="SELECT id FROM maintable WHERE name="test">
Jau, und schon fällt Dein Parser auf die Nase, weil der Value nicht terminiert ist. Zähl mal die Gänsefüßchen ...
Ich weiss, ist mir vorhin auch aufgefallen. Aber ich hatte gehofft du erkennst es als Tippfehler.
Ein Syntaxchecker ist schon dabei..
Du weißt, daß es für Perl eine fertige Template-Engine gibt?
Ja. Aber dies wird eine neuer Template-Parser, der etwas mächter ist als der vorhandene...(Und der nebenbei nicht auf Perl beschränkt ist).
Bei der Syntax nicht. Wenn Du etwas dichter an HTML arbeitest, geht es:
<demo name="foo.html" value="<html><body><h1 align="center">Hallo</h1>Quotes (") schreibt man in HTML als &quot;.<html>">
Ja, das ist natürlich die einfachste Möglichkeit:
1. Zuerst alle embeddeten und gequeoteten Tags suchen und
durch etwas anderes, am idealsten die HTML-Entities, ersetzen.
2. Normal parsen
3. Quotes rückübersetzen.
HTML-Escaping und Deescaping kannst Du z.B. im CGI-Modul borgen, der Code ist sehr sauber und schnell zu kopieren.
Och...
HTML::Entities
reicht völlig.
Ciao,
Wolfgang