Hallo Welt
Hallo Welt
Original Lingva Deutsch
Übersetzung wird vorbereitet...
Dieser Vorgang kann bis zu 60 Sekunden dauern.
Diese Seite wird erstmalig übersetzt und dann für alle Besucher gespeichert.
0%
DE Zurück zu Deutsch
Übersetzung durch Lingva Translate

234 Dokumentationen verfügbar

Wissensdatenbank

Regex Regulaere Ausdruecke Grundlagen

Zuletzt aktualisiert: 20.01.2026 um 10:04 Uhr

Reguläre Ausdrücke (Regex): Der komplette Guide

Regex ist ein mächtiges Werkzeug für Textverarbeitung. Von E-Mail-Validierung bis zur Log-Analyse – wer Regex beherrscht, spart viel Zeit.

Was sind Reguläre Ausdrücke?

Reguläre Ausdrücke (Regular Expressions, Regex) sind Muster, die Zeichenketten beschreiben. Sie werden verwendet für:

  • Suchen und Ersetzen in Texten
  • Validierung von Eingaben (E-Mail, Telefon, etc.)
  • Datenextraktion aus Texten
  • Log-Analyse

Grundlegende Syntax

Literale Zeichen

/hello/     # Findet "hello"
/test123/   # Findet "test123"

Metazeichen

Zeichen Bedeutung Beispiel
. Beliebiges Zeichen (außer Newline) a.c → abc, aXc
^ Zeilenanfang ^Hello
$ Zeilenende end$
\ Escape-Zeichen \. → Punkt literal
| Oder cat|dog

Zeichenklassen

Klasse Bedeutung
[abc] a, b oder c
[^abc] Nicht a, b oder c
[a-z] Kleinbuchstaben a-z
[A-Z] Großbuchstaben A-Z
[0-9] Ziffern 0-9
[a-zA-Z0-9] Alphanumerisch

Vordefinierte Klassen

Shorthand Entspricht Bedeutung
\d [0-9] Ziffer
\D [^0-9] Keine Ziffer
\w [a-zA-Z0-9_] Wortzeichen
\W [^a-zA-Z0-9_] Kein Wortzeichen
\s [ \t\n\r] Whitespace
\S [^ \t\n\r] Kein Whitespace

Quantifizierer

Quantifizierer Bedeutung Beispiel
* 0 oder mehr ab*c → ac, abc, abbc
+ 1 oder mehr ab+c → abc, abbc
? 0 oder 1 colou?r → color, colour
{n} Genau n mal \d{4} → 2024
{n,} Mindestens n mal \d{2,} → 12, 123, 1234
{n,m} n bis m mal \d{2,4} → 12, 123, 1234

Greedy vs. Lazy

# Greedy (Standard) - so viel wie möglich
/a.*b/   in "aXXbYYb" → "aXXbYYb"

# Lazy - so wenig wie möglich
/a.*?b/  in "aXXbYYb" → "aXXb"

Gruppen und Referenzen

# Gruppe
/(ab)+/        # ab, abab, ababab

# Benannte Gruppe
/(?<year>\d{4})-(?<month>\d{2})/

# Rückreferenz
/(\w+)\s+\1/   # Findet "das das", "the the"

# Non-Capturing Group
/(?:ab)+/      # Gruppe ohne Capture

Lookahead und Lookbehind

Syntax Name Bedeutung
(?=...) Positive Lookahead Gefolgt von
(?!...) Negative Lookahead Nicht gefolgt von
(?<=...) Positive Lookbehind Vorausgegangen von
(?<!...) Negative Lookbehind Nicht vorausgegangen von
# Passwort: mindestens eine Zahl
/(?=.*\d)/

# Preis ohne € davor
/(?<!€)\d+/

Praktische Beispiele

E-Mail Validierung

/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/

Deutsche Telefonnummer

/^(\+49|0)[1-9]\d{1,14}$/

Postleitzahl (Deutschland)

/^\d{5}$/

URL

/^https?:\/\/[^\s]+$/

Datum (DD.MM.YYYY)

/^(0[1-9]|[12]\d|3[01])\.(0[1-9]|1[0-2])\.\d{4}$/

IP-Adresse (IPv4)

/^(\d{1,3}\.){3}\d{1,3}$/

Regex in verschiedenen Sprachen

JavaScript

const regex = /\d+/g;
const text = "Es gibt 42 Antworten";

// Test
regex.test(text);  // true

// Match
text.match(regex);  // ["42"]

// Replace
text.replace(/\d+/, "viele");  // "Es gibt viele Antworten"

Python

import re

text = "Es gibt 42 Antworten"

# Suchen
re.search(r'\d+', text)  # Match-Objekt

# Alle finden
re.findall(r'\d+', text)  # ['42']

# Ersetzen
re.sub(r'\d+', 'viele', text)  # "Es gibt viele Antworten"

PHP

$text = "Es gibt 42 Antworten";

// Prüfen
preg_match('/\d+/', $text);  // 1

// Alle finden
preg_match_all('/\d+/', $text, $matches);

// Ersetzen
preg_replace('/\d+/', 'viele', $text);

Flags/Modifier

Flag Bedeutung
i Case-insensitive
g Global (alle Treffer)
m Multiline (^ und $ pro Zeile)
s Dotall (. matcht auch \n)
💡 Tipp: Nutzen Sie regex101.com zum Testen und Debuggen von Regex mit Erklärungen.

Weitere Informationen