Zum Inhalt springen
🛠️ToolsShed

Regex Cheat Sheet

Interaktive Regular-Expression-Referenz mit Live-Pattern-Tests und Copy-on-Click-Beispielen.

Live-Tester

Anchors

MusterBeschreibung
^Start of string / line
$End of string / line
\bWord boundary
\BNon-word boundary
\AStart of string only
\ZEnd of string only

Quantifiers

MusterBeschreibung
*0 or more times
+1 or more times
?0 or 1 time (optional)
{n}Exactly n times
{n,}n or more times
{n,m}Between n and m times
*?Lazy 0 or more
+?Lazy 1 or more

Character Classes

MusterBeschreibung
.Any character except newline
\dDigit [0-9]
\DNon-digit
\wWord char [a-zA-Z0-9_]
\WNon-word character
\sWhitespace
\SNon-whitespace
[abc]Character set — a, b, or c
[^abc]Negated set — not a, b, or c
[a-z]Character range

Groups & Alternation

MusterBeschreibung
(abc)Capturing group
(?:abc)Non-capturing group
(?<name>abc)Named capturing group
(?=abc)Positive lookahead
(?!abc)Negative lookahead
(?<=abc)Positive lookbehind
(?<!abc)Negative lookbehind
a|bAlternation — a or b

Flags

MusterBeschreibung
gGlobal — find all matches
iCase-insensitive
mMultiline — ^ and $ match line boundaries
sDotall — . matches newline too
uUnicode mode
ySticky — match at exact position

Common Patterns

MusterBeschreibung
^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,}$Email address
https?:\/\/[\w\-._~:/?#[\]@!$&'()*+,;=%]+URL (http/https)
^\+?[1-9]\d{1,14}$Phone number (E.164)
^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$Date (YYYY-MM-DD)
^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$IPv4 address
^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$UUID v4
^#(?:[0-9a-fA-F]{3}){1,2}$Hex color code
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$Strong password (min 8 chars, upper+lower+digit)

Klicken Sie auf ein Muster, um es in den Tester zu laden

Über dieses Tool

Reguläre Ausdrücke sind eine mächtige Musterkennzeichnungssprache, die in der Programmierung, Datenverarbeitung, Textanalyse und unzähligen Anwendungen verwendet wird. Das Erlernen von Regex kann aufgrund der prägnanten Syntax und zahlreicher Sonderzeichen überwältigend wirken, aber das Verständnis der Grundlagen——Anker, Quantoren, Zeichenklassen, Gruppen und Lookarounds——ermöglicht es, komplexe Textprobleme elegant zu lösen. Dieser Regex-Spickzettel vereint die wesentlichsten Muster und Konzepte in einer interaktiven Referenz.

Durchsuchen Sie einfach die kuratierten Muster und Konzepte, gruppiert nach Kategorie: Anker (^, $, \b), Quantoren (*, +, ?, {n,m}), Zeichenklassen ([...], \d, \s), Gruppen und Erfassungen (..., ?:...), und Lookarounds (positive und negative Lookaheads und Lookbehinds). Der Live-Pattern-Tester ermöglicht es Ihnen, eine eigene Testzeichenfolge und einen Regex einzugeben, um Treffer in Echtzeit hervorgehoben zu sehen. Kopieren Sie ein beliebiges Muster mit einem Klick und fügen Sie es direkt in Ihren Code oder ein Regex-Debugging-Tool ein.

Speichern Sie dieses Werkzeug als Lesezeichen, wann immer Sie eine schnelle Auffrischung der Syntax benötigen. Ob Sie E-Mail-Adressen validieren, Protokolldateien analysieren, Daten aus HTML extrahieren, unübersichtliche Zeichenfolgen bereinigen oder Code durchsuchen — reguläre Ausdrücke sind unverzichtbar. Die angezeigten Muster sind mit den meisten Sprachen (JavaScript, Python, Java, Go usw.) kompatibel, obwohl sich einige erweiterte Funktionen je nach Implementierung leicht unterscheiden.

Häufig gestellte Fragen

Code-Implementierung

import re

# Common regex patterns
email_pattern = r'^[w.-]+@[w.-]+.[a-zA-Z]{2,}$'
url_pattern = r'https?://[w-._~:/?#[]@!$&'()*+,;=%]+'
ipv4_pattern = r'^(?:(?:25[0-5]|2[0-4]d|[01]?dd?).){3}(?:25[0-5]|2[0-4]d|[01]?dd?)$'

# Test email
email = "user@example.com"
if re.match(email_pattern, email):
    print(f"{email} is valid")

# Find all matches
text = "Contact us at info@example.com or support@test.org"
emails = re.findall(r'[w.-]+@[w.-]+.[a-zA-Z]{2,}', text)
print("Found emails:", emails)

# Named groups
date_text = "Today is 2024-03-15"
match = re.search(r'(?P<year>d{4})-(?P<month>d{2})-(?P<day>d{2})', date_text)
if match:
    print(f"Year: {match.group('year')}, Month: {match.group('month')}")

# Substitution
result = re.sub(r's+', ' ', "hello   world   foo").strip()
print(result)  # "hello world foo"

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.