Anfang des Inhaltsbereichs

Hintergrunddokumentation Mustersyntax  Dokument im Navigationsbaum lokalisieren

Verwendung

Muster im Bounced Mail Framework (BMF) sind reguläre Java-Ausdrücke (Java RegEx).

Um Muster anlegen und verstehen zu können, müssen Sie die Syntax regulärer Ausdrücke in Java kennen.

Im Folgenden werden die Grundlagen für das Anlegen einfacher Muster beschrieben.

Link auf externe Webseite

Weitere Informationen über reguläre Java-Ausdrücke finden Sie unter http://java.sun.com/docs/books/tutorial/essential/regex/.

Grundelemente regulärer Ausdrücke

Zeichen

Syntax

Beschreibung

x

Zeichen x

\\

linksseitiger Schrägstrich (\)

\t

Tabulator

\n

neue Zeile

\.

Punkt (.)

Zeichenklassen

Syntax

Beschreibung

[abc]

a, b oder c (einfache Klasse)

[^abc]

jedes beliebige Zeichen außer a, b oder c (Negation)

[a-zA-Z]

a bis z oder A bis Z einschließlich (Bereich)

Beispiel

Das Muster[dms]ein entspricht den Wörtern dein, mein und sein.

Beachten Sie, dass dieses Muster keinen anderen Wörtern (wie z. B. rein) und auch nicht den groß geschriebenen Varianten (Dein, Mein, Sein) entspricht. Wenn Sie sowohl Klein- als auch Großschreibung abdecken möchten, müssen Sie das Muster [dDmMsS]ein verwenden.

Vordefinierte Zeichenklassen

Syntax

Beschreibung

.

jedes beliebige Zeichen

\d

eine Ziffer (0-9)

\D

ein Zeichen, das keine Ziffer ist - d.h. alle Zeichen außer (0-9)

\s

ein Leerraum (z. B. Leerzeichen, Tab, neue Zeile)

\S

ein Zeichen, das kein Leerraum ist - alle Zeichen außer Leerräumen

\w

ein alphanumerisches Zeichen - alle Zeichen von a-z, A-Z, alle Ziffern und der Unterstrich(_)

\W

ein nicht-alphanumerisches Zeichen - ein Zeichen, das kein Buchstabe, keine Ziffer und kein Unterstrich ist

Beispiel

Das Muster \w\w\w\ entspricht Zeichenfolgen mit drei Buchstaben, Ziffern oder dem Unterstrich, z. B. abc, SAP, A1b, 999 und 5r_.

Es entspricht nicht abcd (Länge ungleich 3) oder a c (wegen Leerraum).

„Gierige“ Quantoren

Syntax

Beschreibung

X?

X, ein Mal oder überhaupt nicht

X*

X, null Mal oder öfter

X+

X, ein Mal oder öfter

X{n}

X, genau n Mal

X{n,}

X, mindestens n Mal

X{n,m}

X, mindestens n, aber nicht mehr als m Mal

Hinweis

Um solche „gierigen“ Quantoren zu benutzen, müssen Sie das X durch ein beliebiges Zeichen oder eine Zeichenklasse ersetzen.

Beispiel

Das Muster \w\w\w\ ist gleichwertig mit dem Muster \w{3}.

Zusammengesetzte Muster

Sie können mehrere Muster in eine Zeile schreiben, wenn Sie sie durch Leerzeichen abtrennen.

Bei einem solchen zusammengesetzten Muster müssen alle Teilmuster berücksichtigt werden, um eine Entsprechung zu finden.

Beispiel

Das zusammengesetzte Muster \w+ \d+ entspricht 123, aber nicht abc.

Das zusammengesetzte Muster \w+ \W+ entspricht gar nichts.

Beispiel

In diesem Beispiel legen Sie ein Muster für das Abgleichen von Mail-Adressen an.

...

       1.      Nehmen wir folgendes Muster:

(\w+)@

Das w+ gibt an, dass ein oder mehrere Buchstaben, Ziffern oder der Unterstrich enthalten sein müssen. Danach muss das AT-Zeichen (@) stehen.

Die Klammern () sind nicht unbedingt erforderlich, teilen den Ausdruck jedoch in Gruppen ein. Dies kann hilfreich sein, wenn Sie einen logischen Teil des Musters ändern müssen.

Beispiel

Dieses Muster entspricht folgenden Beispielen:

mona@

hansbosch@

Jose_Rodriguez@

       2.      Erweitern Sie das Muster wie folgt:

 (\w+)@(\w+\.)(\w+)

Die Gruppe (\w+\.) ist ähnlich, erwartet jedoch im Anschluss einen Punkt (.).

Damit der Punkt als solcher interpretiert werden kann, wird als Fluchtsymbol der linksseitige Schrägstrich (\) verwendet, denn sonst würde der Punkt einem beliebigen Zeichen entsprechen.

Die Gruppe (\w+) wurde bereits im vorigen Schritt erläutert.

Beispiel

Dieses Muster entspricht folgenden Beispielen:

mona@ihrefirma.org

hansbosch@firma.com

Jose_Rodriguez@isp.net

       3.      Erweitern Sie das Muster wie folgt:

(\w+)@(\w+\.)(\w+)(\.\w+)*

Die Gruppe (\.\w+) entspricht einem Punkt (.), gefolgt von einem oder mehreren Buchstaben, Ziffern oder dem Unterstrich.

Der Stern (*) gibt an, dass das vorhergehende Zeichen oder die vorhergehende Gruppe kein Mal oder öfter vorkommen kann.

Da die Klammern eine Gruppe () definieren und sich der Stern (*) auf die gesamte Gruppe bezieht, entspricht das Muster einem Punkt (.), gefolgt von einem oder mehreren Buchstaben, Ziffern oder dem Unterstrich, die kein Mal oder öfter vorkommen können.

Beispiel

Dieses Muster entspricht folgenden Beispielen:

mona@raum1.ihrefirma.org

hansbosch@management.firma.com

Jose_Rodriguez@server5.region3.my.isp.net

Dieses Muster entspricht keinen Adressen mit Punkt vor dem At-Zeichen (@) wie:

nina.smith@sap.com

       4.      Durch Anpassung dieses Musters können Sie beliebige E-Mail-Adressen abgleichen:

(\w+)(\.\w+)*@(\w+\.)(\w+)(\.\w+)*

Sie können das Muster ganz einfach ändern, um alle benötigten Adressen abzudecken.

Wenn das Muster z. B. allen E-Mail-Adressen der Domäne firma.de entsprechen soll, ändern Sie es wie folgt:

(\w+)(\.\w+)*@firma\.de

 

 

Ende des Inhaltsbereichs