Reguläre Ausdrücke
Oft kommt die Open Source-Bibliothek PCRE (Posix Comliant Regular Expressions) zum Einsatz, wenn reguläre Ausdrücke erkannt und verarbeitet werden sollen.
Die bekanntesten Regular Expression Patterns:
.- ein beliebiges Zeichena?- 0 oder 1 aa*- 0 oder beliebig viele a (Greedy)a+- 1 oder beliebig viele a^- am Anfang eines Strings$- am Ende eines Strings|- oder{}- Anzahlena{3}- genau drei Vorkommen von aa{3,}- mindestens drei Vorkommen von aa{3,6}- mindestens drei, maximal sechs Vorkommen von a
[]- Zeichenklassen[a-z]- alle Kleinbuchstaben[abc]- nur a, b oder c[^abc]- alles ausser a, b oder c
()- Gruppierung(a|b)- a oder b; der Match in der Klammer kann später per$1referenziert werden
\- Platzhalter (und gleichzeitig Quote):\b- Wortgrenze\d- Ziffern\D- Nicht-Ziffern\n- Newline, Line feed\r- Carriage-Return\s- Leerraum (Leerzeichen, Tabs, Newlines)\S- Nicht-Leeraum\t- Tab\w- Wortzeichen\W- Nicht-Wortzeichen
Achtung
Bash nutzt KEINE regulären Ausdrücke. Die Shell arbeitet mit Shell-Patterns, wobei ? genau ein beliebiges Zeichen und * null oder beliebig viele Zeichen findet. Ein *.txt findet daher alle Dateien, die genau auf .txt enden (der Punkt wird nicht interpretiert). Anders Tools wie grep, die über die genannte Bibliothek echte reguläre Ausdrücke auf der Kommandozeile unterstützen.
Tipp
https://regex101.com hilft, reguläre Ausdrücke u.a. für PCRE, Python und PHP zu entwickeln und auf ihre Performance hin zu untersuchen.
Patterns
- GUID/UUID (8-4-4-4-12 Format)
[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}- Mail-Adresse
\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b- OID (SNMP)
^([1-9][0-9]{0,3}|0)(\.([1-9][0-9]{0,3}|0)){5,13}$
Built on 2025-10-27