Navigation: Bedingungen - Condition >

<IfMatch> - <IfNotMatch>

 

Sektion

Condition

Muss Feld

Nein

Typ

Text (String)

Standardwert

-

 

Beschreibung

 

<IfMatch> definiert eine Bedingung, die wahr ist, sofern ein bestimmter Attributwert mit einem Muster übereinstimmt.

 

<IfNotMatch> definiert eine Bedingung, die wahr ist, sofern ein bestimmter Attributwert nicht mit einem Muster übereinstimmt.

 

Folgende Tags müssen zwingend innerhalb <IfMatch> oder <IfNotMatch> konfiguriert sein.

 

Tag

Beschreibung

<Attribute>

Der Tag <Attribut> definiert den Attributname, dessen Wert von COPjar mit dem Muster in <Value> verglichen wird.

<Value>

Der Tag <Value> definiert ein Muster, welches COPjar mit dem Wert des mit <Attribut> bestimmten Attributs vergleicht. Das Muster kann eine einfache Zeichenkette enthalten oder ein regulärer Ausdruck (regular expression) darstellen.

<CaseSensitive>

Der Tag <CaseSensitive> definiert, ob COPjar beim Vergleich des Musters mit dem Attributwert die Gross- und Kleinschreibung berücksichtigen (true) soll oder nicht (false). Der Standardwert ist true.

 

Hinweis:

Falls <CaseSensitive>false</CaseSensitive> konfigurieren, konvertiert COPjar vor dem Vergleich den Attributwert in Kleinbuchstaben. Aus diesem Grund müssen die Text im Muster klein schreiben.

<Null/>

In der Regel prüft COPjar Attribute mit Wert NULL nicht und die entsprechende Bedingung gilt als nicht erfüllt. Der Tag <Null/> weist COPjar an, auch Attribute mit NULL Werte zu prüfen.

 

Beispiel

 

<COPJobs>

  <Job>

      <Name>export-related</Name>

      <Action>addserverjob</Action>

      <ServerAction>export-relatedfile</ServerAction>

      <Condition>

          <IfNotMatch>

              <Attribute>NAME</Attribute>

              <Value>t.*</Value>

                      <CaseSensitive>false</CaseSensitive>

          </IfNotMatch>

          <IfNotMatch>

              <Attribute>NAME</Attribute>

              <Value><Null/></Value

          </IfNotMatch>     

      </Condition>

  </Job>

</COPJobs>

 

In diesem Beispiel ist die Bedingung <IfMatch> erfüllt, falls der Wert des Attributs NAME des betreffenden Elementes (zum Beispiel eine Zeichnung) nicht mit dem Zeichen "t" oder "T" beginnt und nicht NULL (<Null/>) ist. Die Gross- und Kleinschreibung wird hier ignoriert (<CaseSensitive>false</CaseSensitive>).

 

Folgender Syntax ist auch möglich:

 

<COPJobs>

  <Job>

      <Name>export-related</Name>

      <Action>addserverjob</Action>

      <ServerAction>export-relatedfile</ServerAction>

      <Condition>

          <IfNotMatch atttribute="NAME">t.*</IfNotMatch>

      </Condition>

  </Job>

</COPJobs>

 

Reguläre Ausdrücke

In <Value> können sog. reguläre Ausdrücke (regular expression) verwendet werden. Innerhalb des Ausdruckes können bestimmte Sonderzeichen als Platzhalter verwendet werden.

 

Die folgende Tabelle zeigt eine Auswahl gültiger Sonderzeichen. X steht in der Tabelle für ein Buchstabe oder für eine Zahl.

 

Zeichen

Bedeutung

.

ein beliebiges Zeichen

X*

Das voranstehende Zeichen X darf beliebig oft (auch keinmal) vorkommen.

 

Eine detaillierte Beschreibung der gültigen regulären Ausdrücke entnehmen sie der Java Dokumentation für die Java Klasse java.util.regex.Pattern.

 

(c) 2018 COP Informatik AG www.copag.ch