Reguläre Ausdrücke
WebSite-Watcher unterstützt PERL5-kompatible Reguläre Ausdrücke, mit denen komplexe Such- und Filter-Ausdrücke erstellt werden können. Die Groß/Kleinschreibung der eingegebenen regulären Ausdrücke spielt keine Rolle und wird nicht berücksichtigt.
Reguläre Ausdrücke müssen in einer der folgenden Funktionen angegeben werden:
- regex( ... )
Filtert den angegebenen regulären Ausdruck
Zum Beispiel: regex(\d+ downloads)
- StartToRegex( ... )
Filtert alles vom Seitenbeginn bis zum ersten Vorkommen des angegebenen regulären Ausdrucks
Zum Beispiel: StartToRegex(\d+ Besucher)
- RegexToRegex( ... , ... )
Filtert alles zwischen zwei regulären Ausdrücken
Zum Beispiel: RegexToRegex(Downloads\: \d+,Lizenz\:)
- RegexToEnd( ... )
Filtert alles vom letzten Vorkommen des angegebenen regulären Ausdrucks bis zum Ende der Seite
Zum Beispiel: RegexToEnd(\d+ Benutzer online)
Nachfolgend finden Sie eine Liste wichtiger Elemente, die von den Regulären Ausdrücken in WebSite-Watcher unterstützt werden:
- \
Durch einen Backslash vor einem Zeichen wird dieses Zeichen "wörtlich" und nicht in einer anderen Funktionalität verwendet. Zum Beispiel findet \. einen Punkt und nicht ein beliebiges Zeichen, das ein Punkt in einem regulären Ausdruck sonst finden würde. Weitere Beispiele:\[ findet ein [, \" findet ein ", \\ findet einen Backslash.
- .
Ein Punkt findet jedes Zeichen. Zum Beispiel findet 'go.d' die Stellen 'good' und 'gold'.
- { }
Findet eine bestimmte Anzahl von Zeichen.
{n} ... exakt n Treffer
{n,} ... mindestens n Treffer
{n,m} ... mindestens n, aber nicht mehr als m Treffer
- [ ]
Zeichen in Klammern finden jedes einzelne Zeichen, dass in der Klammer vorkommt, aber kein anderes. Zum Beispiel findet [bot] b, o oder t. Es können auch Bereiche angegeben werden, so findet [a-z] jedes Zeichen von a bis z.
- [-]
Ein Bindestrich in Klammern zeigt einen Bereich von Buchstaben an. Zum Beispiel findet [b-o] jedes Zeichen von b bis o.
- |
Ein vertikaler Trennstrich findet entweder den Ausdruck vor oder nach dem vertikalen Trennstrich. Zum Beispiel findet 'abc|xyz' die Stellen 'abc' oder 'xyz'.
- *
Ein Stern nach einem Zeichen findet jede beliebige Anzahl dieses Zeichens in Folge (auch keine Zeichen). Zum Beispiel findet bo*: bo, boo und booo, aber nicht b.
- +
Ein Pluszeichen nach einem Zeichen findet jede beliebige Anzahl dieses Zeichens in Folge, mindestens jedoch ein Zeichen. Zum Beispiel findet bo+: boo und booo, aber nicht bo oder be.
- \d+
findet alle Zahlen mit einer oder mehreren Stellen
- \d*
findet alle Zahlen mit null oder mehr Stellen
- \w+
findet alle Wörter (die Buchstaben oder Zahlen enthalten, a-z, A-Z und 0-9) mit einer oder mehreren Stellen. \w+ findet zB. Herzlich, Willkommen, auf, meiner, .... Bitte beachten Sie, dass \w+ nur Zahlen und Zeichen mit einem Ordinalwert kleiner als 128 berücksichtigt.
- [a-zA-Z\xA1-\xFF]+
findet alle Wörter mit einem oder mehreren Zeichen a-z, A-Z sowie Zeichen mit einem Ordinalwert größer als 161 (zB. ä oder Ü). Wenn die Wörter auch Zahlen enthalten dürfen, dann fügen Sie 0-9 zum Ausdruck hinzu: [0-9a-zA-Z\xA1-\xFF]+
- regex(bo*)
findet "bo", "boo", "bot", aber nicht "b"
- regex(bx+)
findet "bxxxxxxxx", "bxx", aber nicht "bx" oder "be"
- regex(\d+)
findet alle Zahlen
- regex(\d+ Besucher)
findet "3 Besucher" oder "243234 Besucher" oder "2763816 Besucher"
- regex(\d+ of \d+ messages)
findet "2 of 1200 messages" oder "1 of 10 messages"
- RegexToEnd(\d+ of \d+ messages)
filtert alles vom letzten Vorkommen von "2 of 1200 messages" oder "1 of 10 messages" bis zum Ende der Seite
- regex(MyText.{0,20})
findet "MyText" und die nächsten 20 Zeichen nach "MyText"
- regex(\d\d.\d\d.\d\d\d\d)
findet Datumsangaben der Form 99.99.9999 oder 99-99-9999 (der Punkt im regulären Ausdruck steht für ein beliebiges Zeichen)
- regex(\d\d\.\d\d\.\d\d\d\d)
findet Datumsangaben der Form 99.99.9999 (mit Punkt zwischen den Zahlen)
- regex(([_a-zA-Z\d\-\.]+@[_a-zA-Z\d\-]+(\.[_a-zA-Z\d\-]+)+))
findet alle E-Mail-Adressen