Regex-Grundlagen
Ein Regex-Muster ist eine kompakte Möglichkeit, den Text zu beschreiben, den Sie abgleichen möchten. Beginnen Sie einfach: Gleichen Sie eine Sache ab, testen Sie sie und fügen Sie Gruppen, Anker oder Quantifizierer erst hinzu, wenn sie benötigt werden.
Anker
^ bedeutet den Anfang der Eingabe und $ bedeutet das Ende der Eingabe.
Zeichenklassen
[0-9], [A-Z], und [a-z] entsprechen Bereichen.
Quantifizierer
* = null oder mehr, + = eins oder mehr, ? = optional.
Gängige Muster
| Anwendungsfall | Muster | Hinweise |
|---|---|---|
| ^[^\s@]+@[^\s@]+\.[^\s@]+$ | Gute Allzweck-Validierung, kein vollständiger RFC-Parser. | |
| URL | https?:\/\/[^\s]+ | Erkennt einfache HTTP- und HTTPS-Links. |
| Ganze Zahl | ^-?\d+$ | Unterstützt optionales Minuszeichen. |
| Dezimalzahl | ^-?\d+(\.\d+)?$ | Erkennt Ganzzahlen und Dezimalzahlen. |
| Leerraum | \s+ | Nützlich zum Zusammenfassen wiederholter Leerzeichen und Zeilenumbrüche. |
| Hex-Farbe | ^#?([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$ | Unterstützt 3- und 6-stellige Farben. |
| IPv4 | \b(?:\d{1,3}\.){3}\d{1,3}\b | Findet IPv4-ähnlichen Text, keine strenge 0-255-Validierung. |
| Leere Zeilen | ^\s*$ | Mit Multiline-Modus verwenden, um leere Zeilen zu erfassen. |
Häufig verwendete Flags
g global
Alle Übereinstimmungen finden, statt nach der ersten Übereinstimmung zu stoppen.
i Groß-/Kleinschreibung ignorieren
Macht die Übereinstimmung unabhängig von Groß-/Kleinschreibung, nützlich für Schlüsselwörter und Benutzereingaben.
m multiline
Lässt ^ und $ Zeile für Zeile arbeiten.
s dotall
Los . Zeilenumbrüche sowie normale Zeichen abgleichen.
Häufige Regex-Fallstricke
- Starten Sie nicht mit einem riesigen All-in-One-Muster. Bauen Sie schrittweise auf und testen Sie jeden Teil.
- Denken Sie daran, Sonderzeichen wie ., ?, +, und [ wenn Sie das Zeichen wörtlich meinen.
- Wenn Sie nur ganze Wörter möchten, fügen Sie Grenzen hinzu wie \bword\b.
- Seien Sie vorsichtig beim gierigen Matching. .* erfasst oft mehr, als Sie erwarten.
Verwenden Sie diese Referenz mit dem richtigen Tool
Suchen Sie hier ein Muster, testen Sie es live, wenden Sie es auf echten Text an oder verwenden Sie es in einem Ersetzungs-Workflow.