FlexText und Regular Expressions
Sie können Regular Expressions in MapForce FlexText folgendermaßen verwenden:
1.Zum Aufteilen von Containern, wo eine Übereinstimmung gefunden wird (der übereinstimmende Text dient als Trennzeichen). In diesem Fall sind Regular Expressions implizit markiert, daher werden hier das Caret- ( ^ ) und das Dollar-Zeichen ( $ ) nicht verwendet. Um z.B. drei aufeinander folgende Ziffern zu finden, verwenden Sie [0-9]{3} anstelle von ^[0-9]{3}$.
2.Zum Umleiten von Text aus einem Aufteilen-Container, wenn der Text eine Übereinstimmung mit einer Regular Expression enthält.
Sie können in jeder der folgenden MapForce-Zielsprachen Regular Expressions in FlexText-Komponenten verwenden:
•Built-in (bei der Mapping-Vorschau)
•Built-in (beim Ausführen der MapForce Server-Ausführungsdatei)
•Codegenerierungssprachen (C++, C#, Java). Beachten Sie, dass einige komplexere Funktionen von Regular Expressions in diesen Sprachen von der Implementierung der Regular Expression in dieser spezifischen Sprache abhängen.
Die Syntax und Semantik von Regular Expressions in FlexText basiert, ähnlich der MapForce core-Funktion toxenize-regexp, auf http://www.w3.org/TR/xmlschema-2/#regexs. Beachten Sie Folgendes:
•Wenn die Trennbedingung mit zwei aufeinander folgenden Sequenzen übereinstimmt, erstellt FlexText dazwischen ein leeres Ergebnis (dasselbe Verhalten tritt auf, wenn Sie keine Regular Expressions verwenden).
•Regular Expression Flags (http://www.w3.org/TR/xquery-operators/#flags) werden nicht unterstützt.
Dieser Abschnitt enthält die folgenden Kapitel:
•Trennen von Text mit Hilfe von Regular Expressions
•Verwendung von Regular Expressions in Aufteilen-Bedingungen