Aktionen

Top  Previous  Next

Bedienung > Hauptmenü > Menü: Hilfe > Assistenten > Neues Projekt Assistent > Aktionen

 

Für die vom Assistenten erzeugten Parser können automatisch Aktionen generiert werden, die zumeist darin bestehen, den jeweils erkannten Text zu kopieren. Diese Aktionen können dann mit wenig Arbeit so modifiziert werden, dass der Ausgabetext die gewünschte Form erhält.

 

Direkte Ausgabe

 

Für jedes Token wird eine Aktion erzeugt, die den erkannten Text-Abschnitt samt den ausgelassenen Zeichen direkt in die Ausgabe schreibt. Z.B.:

 

Token1 {{ out << xState.copy();}}

Token2 {{ out << xState.copy();}}

 

Das direkte Schreiben in die Ausgabe ist die effizienteste Art den Text zu verarbeiten und sollte daher, wenn möglich, gewählt werden. Die Reihenfolge der Text-Abschnitte bleibt dabei allerdings unverändert. 

 

 

In String-Variable schreiben

 

Für jedes Token wird eine Aktion erzeugt, die den erkannten Text-Abschnitt samt den ausgelassenen Zeichen in eine String-Variable schreibt. Z.B.:

 

Token1 {{ s1 = xState.copy();}}

Token2 {{ s2 = xState.copy();}}

 

Hier werden die erkannten Text-Abschnitte dupliziert, können dann aber in beliebiger Reihenfolge ausgegeben werden. Z.B.:

 

out << s2 << s1;

 

 

Parse-Baum erzeugen

 

Für jedes Token wird eine Aktion erzeugt, die den erkannten Text-Abschnitt samt den ausgelassenen Zeichen in eine Knoten-Variable schreibt. Z.B.:

 

Token1 {{ nRule.add("Token1", xState.copy());}}

Token2 {{ nRule.add("Token2", xState.copy());}}

 

Ein Parse-Baum erlaubt eine vielseitige und mehrfache Weiterverarbeitung seiner Knoten. Jedoch ist es nicht trivial korrekte Routinen für diese Verarbeitung zu schreiben.

 

 

DOM erzeugen

 

Mit dieser Option wird wie oben ein Parse-Baum erzeugt, aber aus dnode's statt aus node's. Damit wird ein XML-Dokument erzeugt, das schließlich in die Ausgabe geschrieben wird.

 

 

Keine Aktionen

 

Wenn nur ein kleiner Teil des erkannten Textes ausgegeben werden soll, oder wenn obige Methoden miteinander kombiniert werden sollen, so empfiehlt es sich, den Code für die Aktionen von Hand zu schreiben.



Diese Seite gehört zur TextTransformer Dokumentation

Home  Inhalt  English