Webseiten-Werkzeuge

Benutzer-Werkzeuge


Eigenschaft:

Auswahlmuster


Beschreibung:

Diese Objekteigenschaft bestimmt, zusammen mit der Objekteigenschaft Feldindex / Tag, die in den Vordruck einzusetzenden Nutzdaten. Mit diesem Wert wird festgelegt, gegen welches Muster die unter Feldindex / Tag 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 entsprechende Klammerung).

Wird unter Feldindex / Tag ein XML-Tag referenziert, so bezieht sich das Ausawahlmuster auf den kompletten Inhalt des Tags. Somit können auch nur Teile dieses Inhalts genutzt werden.

Bei der manuellen Überarbeitung des Auswahlmusters sind alle Klein- und Grossbuchstbaben, länderspezifischen Sonderzeichen (Unicode), Ziffern und alle Sonderzeichen (ausser den weiter unten aufgeführten Metazeichen) erlaubt. Insbesondere ist die Verwendung von Leerstellen zulässig. Steuerzeichen wie Tabulator, Zeilen- oder Seitenvorschub können zwar hexadezimal eingegeben werden, sind aber nicht nutzbar, weil nur die Textbestandteile des Dokuments durchsucht werden.

Vorsicht ist bei der Verwendung länderspezifischer Sonderzeichen angebracht. Hier spielt eine entscheidende Rolle, in welchem Zeichensatz diese Sonderzeichen auf dem Drucker kodiert sind. Wenn dies nicht ebenfalls der Zeichensatz Unicode ist, müssen die Sonderzeichen im print2forms-System gegebenenfalls hexadezimal kodiert werden..

Bei der Eingabe des Auswahlmusters können komplexe Suchmuster verwendet werden. Zur Beschreibung von Mustern werden sogenannte Reguläre Ausdrücke verwendet, die mit den folgenden, sogenannten Metazeichen beschrieben werden:

. Der Punkt repräsentiert ein beliebiges Zeichen - natürlich auch sich selbst und jedes der anderen Metazeichen. Dieses Teilmuster ist also unabhängig vom zu testenden Zeichen immer erfüllt.
# Das Hash-Symbol repräsentiert eine Dezimalziffer, also die Zeichen '0' bis '9'. Es ist somit eine Abkürzung für '[0-9]' (siehe weiter unten). Das Symbol kann auch innerhalb der Definition von Zeichenklassen verwendet werden.
@ Das @-Symbol repräsentiert einen beliebigen Gross- oder Kleinbuchstaben des lateinischen Alphabets, also die Zeichen 'A' bis 'Z' oder 'a' bis 'z'. Es ist somit eine Abkürzung für '[a-zA-Z]' (siehe weiter unten). Das Symbol kann auch innerhalb der Definition von Zeichenklassen verwendet werden.
[ ] Innerhalb der eckigen Klammern können die an einer bestimmten Stelle zulässigen Zeichen einzeln 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). Ist ein Minuszeichen Bestandteil der Zeichenklasse, muss es als erstes aufgeführt oder in seiner literalen Form '\-' geschrieben werden. Eine öffnende oder schliessende eckige Klammer innerhalb der Zeichenklasse muss immer als '\[' oder '\]' geschrieben werden.
| Der senkrechte Strich kennzeichnet eine Alternative. Wird das links vom senkrechten Strich stehende Muster nicht erkannt, wird das Muster rechts vom senkrechten Strich getestet. Wird keines der Teilmuster erkannt, gilt das gesamte Muster als nicht erkannt.
\ Der inverse Schrägstrich kennzeichnet das nachfolgende Zeichen als Literal. Damit können alle zur Formulierung der Muster notwendigen Metazeichen ('*' = '\*', '?' = '\?', etc) auch in den Nutzdaten abgetestet werden. Folgt dem Schrägstrich ein 'x', werden die beiden nachfolgenden Zeichen als Hexadezimalwerte interpretiert. Damit ist mit '\x00' bis '\xFF' der gesamte Zeichenbereich inklusive Steuerzeichen abdeckbar.
* Der Stern repräsentiert einen Wiederholungsfaktor. Er erlaubt die beliebig häufige Wiederholung des vorangegangenen Musters - insbesondere aber auch, dass das Muster Null mal wiederholt wird, also gar nicht vorkommt.
+ Das Pluszeichen repräsentiert einen Wiederholungsfaktor. Es erlaubt die beliebig häufige Wiederholung des vorangegangenen Musters, wobei das Muster aber mindestens einmal vorkommen muss.
? Das Fragezeichen repräsentiert einen Wiederholungsfaktor. Es erlaubt die nullmalige oder einmalige Wiederholung des vorangegangenen Musters. Es ist somit eine Abkürzung für den Wiederholungsfaktor '{0,1}' (siehe weiter unten).
{ } Innerhalb der geschweiften Klammern kann ein numerischer Wiederholungsfaktor angegeben werden. Die Form '#{5}' fordert das exakt fünfmalige Auftauchen einer Ziffer und entspricht daher dem Muster '#####'. Ein Wiederholungsfaktor bezieht sich immer nur auf das vorangehende Zeichen, die Zeichenklasse oder Gruppe. Alternativ kann ein Wiederholungsfaktor auch in der Form '#{2,9}' angegeben werden, was für eine Dezimalzahl mit mindestens zwei und maximal neun Stellen steht.
( ) Innerhalb der runden Klammern können beliebige andere Muster zu einer Gruppe zusammengefügt werden. Auf diese Gruppe kann ein Wiederholungsfaktor angewendet werden. Die Zeichen aus dem Nutzdatenstrom, die durch den Inhalt der Gruppe erkannt werden, werden in einem Textpuffer zur weiteren Nutzung innerhalb von Schablonen zur Verfügung gestellt. Insgesamt können nur zehn Gruppen innerhalb eines Musters verwendet werden. Gruppen können ineinander geschachtelt werden.



Hinweise:

  • Die Verwendung von Auswahlmustern hat keinen grösseren Einfluss auf die Laufzeit der Prozesse.
  • Frühere Versionen von print2forms haben für die Mustererkennung andere Muster verwendet. Diese werden von den aktuellen Versionen der Clients und Gateways auch immer noch unterstützt, und können auch weiterhin verwendet werden. Soll aber die oben beschriebene, leistungsfähigere Art der Mustererkennung in alten Installationen parallel dazu verwendet werden, sind die neuen Muster mit einem vorangestellten '^' zu kennzeichnen. In neueren Installationen ab der Installer Version 2.5 werden ausschliesslich die neuen Muster verwendet.
  • Eine ausführliche Abhandlung und viele Beispiele zum Einsatz von Vergleichswerten und Mustern findet sich im print2forms Handbuch über Reguläre Ausdrücke und hier im Wiki unter Reguläre Ausdrücke.
  • Als schnelle Übersicht und Gedächtnisstütze kann hier das vollständige Syntaxdiagramm für reguläre Ausdrücke abgerufen werden: Komplettes Syntaxdiagramm.



print2forms/objekte/res/fldpat.txt · Zuletzt geändert: 2022-05-03 09:51 (Externe Bearbeitung)