Reguläre Ausdrücke (UNIX-Syntax) Ich habe gesucht - und nichts übersichtlicheres und gut beschriebenes gefunden als den u.a. Link auf Wikipedia. http://de.wikipedia.org/wiki/Regul%C3%A4rer_Ausdruck
Hier eine Auflistung einiger gängiger Regulärer Ausdrücke
| Symbol |
Funktion |
\
|
Weist das nächste Zeichen als Sonderzeichen aus. "n" steht für den Buchstaben "n", " " für einen Zeilenvorschub bzw. das NewLine-Zeichen. |
| ^ |
Steht für den Zeilenanfang. |
| $ |
Steht für das Zeilenende. |
| * |
Steht für das beliebig häufige Auftreten (auch kein Mal) des vorangehenden Zeichens. |
| + |
Steht für das ein- oder mehrmalige Auftreten des vorangehenden Zeichens. |
| . |
Steht für ein beliebiges Zeichen außer einem Zeilenwechsel. |
| (Ausdruck) |
Klammert einen im "Ersetzen"-Befehl zu verwendenden Ausdruck. Ein regulärer Ausdruck kann sich aus bis zu 9 geklammerten Ausdrücken zusammensetzen, die gemäß der Reihenfolge ihres Auftretens im regulären Ausdruck durchnummeriert sind. |
| [xyz] |
Eine Zeichenmenge. Steht für ein beliebiges Zeichen in den Klammern. |
| [^xyz] |
Eine inverse Zeichenmenge. Steht für ein beliebiges Zeichen, das NICHT in den Klammern steht. |
| \d |
Steht für eine Ziffer. Entspricht [0-9]. |
| \D |
Steht für ein Zeichen, das keine Ziffer ist. Entspricht [^0-9]. |
| \f |
Steht für einen Blattvorschub bzw. ein FormFeed-Zeichen. |
| \n |
Steht für einen Zeilenvorschub bzw. ein NewLine-Zeichen. |
| \r |
Steht für einen Wagenrücklauf bzw. ein Return-Zeichen. |
| \s |
Steht für einen beliebigen Leerraum, einschließlich Leerzeichen, Tabulator, Seitenvorschub usw. (aber nicht Zeilenwechsel). |
| \S |
Steht für einen beliebigen Nicht-Leerraum (aber nicht Zeilenwechsel). |
| \t |
Steht für ein Tabulator-Zeichen. |
| \V |
Steht für ein vertikales Tabulator-Zeichen. |
| \w |
Steht für ein beliebiges Zeichen für Wörter, einschließlich dem Unterstrich. |
| \W |
Steht für ein beliebiges Zeichen, das nicht für Wörter verwendet wird. |
Einige Beispiele:
Im Stopp-Wort-Editor sollen alle Formen von abgebaut (abgebauten, abgebautes,...) festgelegt werden:
abgebaut[a-z]*
Im Idiom-Editor soll festgelegt werden, dass das Stop-Wort of in alle Vorkommnisse von Library of ... erhalten bleiben soll:
[Ll]ibrary [Oo]f [A-Z,a-z]*
Ein "und" soll dann nicht als Stoppwort behandelt werden, wenn davor ein Wort mit Bindestrich steht - z.B. aus "Hinweise für die einzelfallbezogene Erfassung von Verdachtsflächen rüstungs- und kriegsbedingter Altlasten." soll "Verdachtsflächen rüstungs- und kriegsbedingter Altlasten" heraus gelöst werden.
RICHTIG: \s[a-zäöüß0-9-]*\- und [a-zäöüß0-9-]*\s
FALSCH: \s[a-z, ä, ö, ü, 0-9, ß, \-]*\- und [a-z, ä, ö, ü, 0-9, ß, \-]*\s (bildet ganze Absätze)
es ginge auch mit "\s\w*\- und \w*\s", allerdings kommt es zu einer Zeichentrennung innerhalb eines Wortes, wenn Umlaute vorhanden sind.
noch besser:
\s[a-zäöüß0-9-]*\- (und|and) [a-zäöüß0-9-]*\s Für Ausdrücke mit Bindestrich - z.B. Österreichisch-Ungarische Zusammenarbeit [a-zA-ZöÖüÜäÄß]+\-[öÖäÄüÜßa-zA-Z]+ Diese RegEx generiert Österreichisch-Ungarische, in ProTerm werden aber Ausdrücke vor und hinter "Österreichisch-Ungarische" ebenfalls mit verwendet, es sei denn, im Admin, bei Idiom, wird die Checkbox "separieren" angeklickt.
Einige RegEx-Beispiele: [a-zA-ZöÖüÜäÄß]+\-[öÖäÄüÜßa-zA-Z]+
library of [a-z]*
st\. .+
skt\. .+
[a-z]+\- und [a-z]+
St\. [a-z]+ in [a-z]+
w\. bush
[a-z, A-Z]*ischer Kampfverband[a-z]*
[L,l]ibrary [o,O]f [a-z,A-Z]+
[G,g]eorge [w,W]\. [B,b]ush
organisier[a-z]+ verbrech[a-z]+
organisier[a-z]+ kriminal[a-z]+
Van der
New York[a-zA-Z]+
[a-zA-Z]+- [A-Za-z]+
[a-zA-Z]+-[a-zA-Z]+ Auswertung von email-Adressen: \w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
|