Webseiten-Werkzeuge

Benutzer-Werkzeuge


Eigenschaft:

Auswahlmuster Daten


Beschreibung:

Diese Objekteigenschaft bestimmt, zusammen mit der Objekteigenschaft Feldindex Daten, die in den Vordruck einzusetzenden Nutzdaten. Mit diesem Wert wird festgelegt, gegen welches Muster die unter Feldindex Daten referenzierten Nutzdaten getestet werden sollen. Die maximale Länge des Musters ist auf 80 Zeichen beschränkt.

In der Regel wird der Wert für das Muster während des Importvorgangs durch das Markieren der Nutzdaten automatisch erzeugt und hier eingetragen. Dabei wird meist ein fixer Teil des Nutzdatenfeldes übersprungen und dann ein fixer Teil als in den Vordruck einzusetzende Nutzdaten ausgewählt (durch Klammerung). Ein Sonderfall davon ist, dass alle Zeichen bis zum Ende des Nutzdatenfeldes ausgewählt werden sollen.

Bei der manuellen Überarbeitung des Musters sind aber wie bei allen anderen im print2forms-System verwendeten Mustern alle Klein- und Grossbuchstbaben, länderspezifischen Sonderzeichen (ISO 8859-1), Ziffern und alle Sonderzeichen ausser den für die Musterkennung reservierten (siehe weiter unten) erlaubt. Insbesondere ist die Verwendung von Leerstellen zulässig. Steuerzeichen wie Tabulator, Zeilen- oder Seitenvorschub können nicht eingegeben werden.

Vorsicht ist bei der Verwendung länderspezifischer Sonderzeichen angebracht. Hier spielt eine entscheidende Rolle, in welchem Zeichensatz diese Sonderzeichen innerhalb der Nutzdaten kodiert sind. Wenn dies nicht ebenfalls der Zeichensatz ISO 8859-1 ist, müssen die Sonderzeichen im print2forms-System gegebenenfalls durch ein '?' ersetzt werden - sie werden dann allerdings auch nicht getestet.

Bei der Eingabe des Vergleichswerts können sogenannte Wildcards verwendet werden. Es stehen folgende Wildcard-Zeichen zur Verfügung:

? Das Fragezeichen repräsentiert ein beliebiges anderes Zeichen - natürlich auch sich selbst und jedes der anderen Wildcard-Zeichen.
* Der Stern repräsentiert eine beliebig lange Zeichenkette bestehend aus beliebigen Zeichen. Beliebig lang heist auch Zeichenketten der Länge Null. Die Zeichenketten dürfen natürlich auch die Wildcard-Zeichen enthalten.
# Das #-Symbol repräsentiert eine Dezimalziffer, also die Zeichen '0' bis '9'.
@ Das @-Symbol repräsentiert einen beliebigen Gross- oder Kleinbuchstaben des lateinischen Alphabets, also die Zeichen 'A' bis 'Z', oder 'a' bis 'z'.
\ Das \-Symbol kennzeichnet das nachfolgende Zeichen als Literal. Damit können die zur Formulierung der Muster notwendigen Metazeichen ('*', '?', etc) auch in den Nutzdaten abgetestet werden.
[ ] Innerhalb der eckigen Klammern können die an einer bestimmten Stelle zulässigen Zeichen aufgeführt werden. Damit wird eine sogenannte Zeichenklasse definiert. Dabei sind Aufzählung wie etwa '[AEIOU]' aber auch Bereiche wie '[0-9]' möglich. Mischformen wie '[0-9ABCDEF]' oder [0-9a-fA-F]' sind ebenfalls erlaubt. Die Reihenfolge von Bereichen innerhalb der Klasse ist ohne Bedeutung, wohl aber die Reihenfolge der Zeichen bei der Definition von Bereichen. Das erste Zeichen muss einen kleineren Code haben als der des Endzeichens (in ISO 8859-1).
( ) Innerhalb der runden Klammern werden alle Zeichen aus dem Nutzdatenstrom in einen internen Zwischenspeicher kopiert. Dieser Zwischenspeicher wird dann in den Vordruck anstelle des Feldnamens eingesetzt.
{ } Innerhalb der geschweiften Klammern kann ein Wiederholungsfaktor angegeben werden. So entspricht '#{9}' dem Muster '#########'. Ein Wiederholungsfaktor bezieht sich immer nur auf das vorangehende Zeichen oder die Zeichenklasse.

Ausführliche, kommentierte Beispiele für die mit diesem System formulierbaren Muster finden sich im allgemeinen Kapitel zum Thema 'Mustererkennung'.


Hinweise:

  • Eine ausführliche Abhandlung und viele Beispiele zum Einsatz von Mustern findet sich auch im print2forms-Tutorial.
  • Die Verwendung von Mustern hat keinen grösseren Einfluss auf die Laufzeit der Prozesse.
  • Es ist geplant, demnächst in print2forms für die Formulierung von Vergleichsmustern reguläre Ausdrücke zu verwenden. Die neue Syntax wird leider kleinere Modifikationen an bestehenden Installationen erfordern. Wenn möglich, sollte daher das Zeichen '*' nur dann eingesetzt werden, wenn wirklich eine variable Anzahl von Zeichen übersprungen werden muss. Muster wie etwa '?{65}' sind hier vorzuziehen.


print2forms/objekte/ressource/auswahlmuster.txt · Zuletzt geändert: 2018-02-21 15:12 (Externe Bearbeitung)