Regular Expressions ( zu deutsch "Reguläre Ausdrücke" ) bezeichnen genau definierte Suchmuster mit deren Hilfe sich in
einer Zeichenkette bestimmte Inhalte suchen und bei Bedarf ersetzen lassen. In der Fachsprache werden Regular Expressions
der Einfachheit wegen lediglich als "RegExes" (Einzahl: "RegEx") bezeichnet. RegExes werden sehr häufig in Programmiersprachen
wie Perl oder PHP verwendet, aufgrund der Mächtigkeit dieser regulären Ausdrücke ist das Anwendungsgebiet nahezu unbegrenzt.
(Stand 01.10.2004)
Wie können RegExes bei der Filterung von E-Mails sinnvoll eingesetzt werden?
Die Einsatzmöglichkeiten der Regular Expressions bei der Filterung Ihres E-Mail Verkehrs sind äusserst vielfältig, aufgrund
der Komplexität und Mächtigkeit der RegExes kann die Verwendung der regulären Ausdrücke jedoch bei falscher Konfiguration
auch äusserst gefährlich sein! Nachfolgend finden Sie daher einige sinnvolle und praktische Beispiele, wie Sie RegExes bei
der Filterung Ihres Mailverkehrs nutzen können.
Hierzu ist es jedoch zunächst erforderlich, kurz auf die Grundelemente der RegExes einzugehen:
(?i) |
Hiermit definieren Sie, dass die RegEx sowohl Groß- und Kleinschreibung berücksichtigen
soll. |
[148ahle] |
Ein beliebiges aus der Menge der in eckigen Klammern angegebenen Zeichen soll vorkommen.
Wenn mehrere der Zeichen in der Menge hintereinander kommen, kann man diese durch ein - abkuerzen, z.B. [a-f] für [abcdef]. |
[a-z]
|
Durch diese Angabe werden alle Kleinbuchstaben von "a" bis "z" berücksichtigt. |
[A-Z]
|
Analog zu den Kleinbuchstaben werden hiermit alle Großbuchstaben von "A" bis "Z" berücksichtigt. |
[0-9] |
Umfasst alle Ziffern von "0" bis "9". |
\d |
Alternativ zur Angabe [0-9] können mit dieser Angabe auch alle Ziffern angegeben werden. |
\s |
Ein beliebiges Whitespace (Leerzeichen oder Tabulator). |
| |
Dies ist das "Oder"-Zeichen für Regular Expressions. |
. |
Der Punkt steht für ein beliebiges Zeichen. |
* |
Das vorangegangene Zeichen kann beliebig oft (auch gar nicht) vorkommen. |
+ |
Das vorangegangene Zeichen kann beliebig oft,es muss jedochmindestens einmal vorkommen. |
? |
Das vorangegangene Zeichen ist optional. |
Nachfolgend finden Sie nun einige praktische und einfache
Beispiele für die Verwendung von Regular Expressions:
(?i)v[i1]agra - die zu überprüfende Zeichenkette muss nun folgende Bedingungen erfüllen, damit die
Regular Expression zutrifft (matcht):
1. (?i) : Die Groß- und Kleinschreibung spielt keine
Rolle 2. v: In der Zeichenkette muss ein "v" vorhanden sein UND 3.
[i1]: Dem "v" muss entweder ein "i" ODER eine "1" folgen UND 4. agra: Den oben beschriebenen
Zeichen muss die Zeichenfolge "agra" folgen.
Unter anderem können durch das oben beschriebene Beispiel folgende Schreibweisen
abgedeckt werden: ViAgrA V1aGRa viagra
(?i)t[e3]{2}n - die zu überprüfende Zeichenkette muss nun folgende Bedingungen erfüllen, damit
die Regular Expression zutrifft (matcht):
1. (?i) : Die Groß- und Kleinschreibung spielt
keine Rolle 2. t: In der Zeichenkette muss ein "t" vorhanden sein UND 3.
[e3]{2}: Dem "t" müssen entweder "ee" , "e3" , "33" oder "3e" folgen. Durch die Angabe "{2}" definieren wir,
dass das vorangestellte Zeichen zweimal vorhanden sein muss. Da es sich hierbei um eine Menge handelt, müssen zwei Zeichen
aus der menge hintereinander folgen UND 4. n: Den oben beschriebenen Zeichen muss das
Zeichen "n" folgen.
Unter anderem können durch das oben beschriebene Beispiel folgende Schreibweisen abgedeckt werden:
teen t33n T33N te3n
|