Regex-Spickzettel: Muster, die jeder Entwickler braucht
RegulĂ€re AusdrĂŒcke fĂŒhlen sich an wie schwarze Magie, bis man die Muster lernt. Sobald Sie es getan haben, werden sie unverzichtbar fĂŒr Textsuche, Validierung, Datenextraktion und String-Manipulation.
Nehmen Sie ein Muster, fĂŒgen Sie es in unseren Regex Tester ein, um zu experimentieren, und passen Sie es an Ihre BedĂŒrfnisse an.
Grundlegende Regex-Syntax
Zeichenklassen
| Muster | Trifft zu | Beispiel |
|---|---|---|
. | Beliebiges Zeichen auĂer Zeilenumbruch | a.c trifft "abc", "a1c" |
\d | Beliebige Ziffer (0-9) | \d{3} trifft "123" |
\w | Wortzeichen (Buchstabe, Ziffer, Unterstrich) | \w+ trifft "hello_1" |
\s | Whitespace | \s+ trifft Leerzeichen |
[abc] | Eines von a, b oder c | [aeiou] trifft Vokale |
[^abc] | Beliebiges Zeichen auĂer a, b, c | [^0-9] trifft Nicht-Ziffern |
[a-z] | Beliebiges Zeichen im Bereich | [A-Za-z] trifft Buchstaben |
Quantifizierer
| Muster | Bedeutung |
|---|---|
* | Null oder mehr |
+ | Eins oder mehr |
? | Null oder eins |
{n} | Genau n-mal |
{n,m} | Zwischen n und m-mal |
Anker und Gruppen
| Muster | Bedeutung |
|---|---|
^ | Anfang des Strings |
$ | Ende des Strings |
\b | Wortgrenze |
(abc) | Erfassende Gruppe |
(?:abc) | Nicht-erfassende Gruppe |
a|b | Alternation (Oder) |
(?=abc) | Positiver Lookahead |
Praktische Muster
E-Mail-Validierung
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
URL-Matching
https?:\/\/[\w.-]+(?:\.[a-zA-Z]{2,})(?:\/[\w./?%&=-]*)?
PasswortstÀrke
Mindestens 8 Zeichen, ein GroĂbuchstabe, ein Kleinbuchstabe, eine Ziffer, ein Sonderzeichen:
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%^&*])[A-Za-z\d!@#$%^&*]{8,}$
FĂŒr die Generierung starker Passwörter verwenden Sie unseren Passwort-Generator.
Hex-Farbcodes
^#?([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6})$
Konvertieren Sie zwischen Farbformaten mit unserem Color Converter.
UUID-Validierung
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
Generieren Sie gĂŒltige UUIDs mit unserem UUID Generator.
Regex-Performance-Tipps
- Spezifisch sein â
[a-zA-Z]ist schneller als. - Katastrophales Backtracking vermeiden â Verschachtelte Quantifizierer wie
(a+)+verursachen exponentielle Laufzeit - Nicht-erfassende Gruppen verwenden, wenn Sie den Wert nicht benötigen
- Muster verankern â
^pattern$ist schneller als unverankerte Suche - Mit GrenzfĂ€llen testen â Verwenden Sie unseren Regex Tester vor dem Deployment
HĂ€ufig gestellte Fragen
Was ist der Unterschied zwischen * und +?
* trifft null oder mehr Vorkommen, + erfordert mindestens eins. Also trifft ab*c auf "ac", aber ab+c nicht.
Wie mache ich Regex case-insensitive?
Verwenden Sie das i-Flag: /pattern/i in JavaScript, re.IGNORECASE in Python.
Verwandte Ressourcen
- Regex fĂŒr E-Mail-Validierung â Muster, die in der Produktion funktionieren
- Regex Tester Tool â Muster in Echtzeit testen und debuggen
- Passwort-Generator â Passwörter generieren, die Regex-Regeln entsprechen
- UUID Generator â GĂŒltige UUIDs generieren