**Vorbemerkung:** Das TXSTEP-Tag **transform** bietet einen ähnlichen Funktionsumfang wie das TUSTEP-Kommando **#kopiere**. Mit **transform** können **Dateien unverändert kopiert** oder aber beim Kopieren die **Daten** (mittels Parametern) auf vielfältige Art **analysiert, ausgewertet, modifizert, ergänzt oder extrahiert** werden.
----
[[txstep:loesungen:start|Zurück zum Inhaltsverzeichnis - Lösungen und Tipps]]
----
====== Kopieren einer Datei ohne Veränderung der Daten ======
- [tomcbe | tomcbe]\\ \\ 1. Datei wird **unverändert kopiert**, die **Satznummern bleiben erhalten**.\\
\\ 2. Datei wird beim Kopieren **neu durchnummeriert**\\ Dafür muss nur die Angabe beim Attribut **mode** geändert werden: **+** bedeutet, dass die Sätze neu nummeriert werden.\\
\\
====== Kopieren einzelner Texteinheiten nach Bedingungen ======
- [tomcbe | tomcbe]]\\ \\ **Musterdatei:**
\\
\\ {{files_open:daten:psalm.tf|psalm.tf}} [350 KB]
\\
\\ 1. Aus der Datei 'psalm.tf' (= der gesamte Psalter) werden diejenigen **Sätze** (= Verse) kopiert, die eine bestimmte **Zeichenfolge** enthalten.\\ a. die **Zeichenfolge** "silber"\\ Transform arbeitet – wie #kopiere übrigens auch – in mehreren Durchgängen (pass in TXSTEP). Innerhalb eines solchen Durchgangs können mit dem Tag **examine-text** verschiedene Bedingungen definiert werden, wann ein Textteil für die Weiterverabeitung ausgewählt wird und wann nicht. In diesem Fall reicht die Angabe von **select** mit entsprechender Bedingung **text-contains**.\\
b. die **Zeichenfolgen** "silber" ODER "gold", aber nicht "golden"\\ Innerhalb der Suchtabelle (**search-table**) können nicht nur Suchzeichenfolgen (**search-string**), sondern auch Ausnahmezeichenfolgen (**exception-string**) angegeben werden. **exception-string**s müssen vor den **search-string**s definiert werden. Der Ausdruck "golden" muss als **exception-string** der Suchtabelle hinzugefügt werden.\\
c. die **Wörter** "Silber" ODER "Gold" (aber keine Zusammensetzungen, z.B. "Goldschmuck")\\ Analog zu b. werden hier zwei **exception-string**s verwendet. \G bzw. \S steht für den jeweiligen Grossbuchstaben, {\a} für einen beliebigen Kleinbuchstaben. \g und \s würden für die jeweiligen Kleinbuchstaben stehen.\\
2. Aus der Datei 'psalm.tf' werden diejenigen **Abschnitte** (= Psalmen) kopiert, die die **Zeichenfolge** "silber" enthalten\\ Hierzu kann vor dem ersten **pass** mit dem Tag **define-text-units** definiert werden, welche Zeichenfolgen den Anfang bzw. das Ende einer Texteinheit markieren. Diese Texteinheiten werden als ganzes weiterverabeitet.\\
{{psalm}}
----
[[txstep:loesungen:start|Zurück zum Inhaltsverzeichnis - Lösungen und Tipps]]