Direkt zum Hauptinhalt springen
eLearner.app
Modul 1 · Lektion 2 von 42/32 im Kurs~10 min
Lektionen des Moduls (2/4)

Basisklassen: \d \w \s

Neben literalen Zeichen bieten Regexes vordefinierte Klassen: Abkürzungen für "jede Ziffer", "jedes Wortzeichen", "jeden Whitespace". Sie sind der erste Schritt zu wirklich nützlichen Mustern.

KlasseTreffer
\dEine Ziffer (0-9)
\wEin Wortzeichen (A-Za-z0-9_)
\sEin Whitespace (Leerzeichen, Tabulator, Zeilenumbruch usw.)
\DKEINE Ziffer
\WKEIN Wortzeichen
\SKEIN Whitespace

Jede Klasse stimmt mit einem einzelnen Zeichen überein. Um mit "einem oder mehreren Zeichen" übereinzustimmen, benötigst du Quantifizierer (+, in Modul 2), aber wir verwenden + sofort, da "Finde mir alle Zahlen" einfach zu nützlich ist, um darauf zu warten.

Code
Pattern: \d+
Sample:  Ho 3 mele, 12 pere e 100 prugne.
            ^      ^^      ^^^

\d+ bedeutet eine oder mehrere aufeinanderfolgende Ziffern: Es stimmt mit 3, 12 und 100 als drei separate Treffer überein (mit dem Flag g).

\w: Wortzeichen

\w entspricht [A-Za-z0-9_] (ASCII-Buchstaben, Ziffern, Unterstrich). Es enthält KEINE Umlaute, griechischen Buchstaben oder Emojis: Für diese benötigst du Unicode-Eigenschafts-Escapes (\p{L}, Modul 5).

Vertiefung in Basiklassen und Negationen

Vordefinierte Klassen wie \d, \w, \s beschleunigen das Schreiben von Code. Die großgeschriebenen Versionen (\D, \W, \S) verneinen die Menge. Zum Beispiel erfasst \S+ jeden Textblock, der frei von Leerzeichen ist (wie ganze Wörter inklusive Interpunktion). Die Engine verarbeitet \s, indem sie nicht nur das Standard-Leerzeichen, sondern auch Tabulatoren (\t) und Zeilenumbrüche (\n oder \r) matcht.

Probiere es aus

Übung#regex.m1.l2.e1
Versuche: 0Wird geladen…

Extrahiere jede Sequenz von aufeinanderfolgenden Ziffern (Zahlen) aus dem Text. Verwende die Klasse `\d` mit dem Quantifizierer `+`.

Editor wird geladen…
Hinweis anzeigen

\d+ erfasst eine oder mehrere Ziffern. Mit dem g-Flag sammelst du jeden Treffer.

Lösung nach 3 Versuchen verfügbar

Wiederholungsübung

Übung#regex.m1.l2.e2
Versuche: 0Wird geladen…

Finde jedes 'Wort' im Text: eine fortlaufende Sequenz von Wortzeichen (`\w+`).

Editor wird geladen…
Hinweis anzeigen

\w+ stimmt mit Sequenzen von Buchstaben/Ziffern/Unterstrich überein. Satzzeichen werden übersprungen.

Lösung nach 3 Versuchen verfügbar

Zusätzliche Herausforderung

Übung#regex.m1.l2.e3
Versuche: 0Wird geladen…

Finde alle Sequenzen von einem oder mehreren aufeinanderfolgenden Whitespace-Zeichen im Text (einschließlich Leerzeichen, Tabulatoren und Zeilenumbrüchen).

Editor wird geladen…
Hinweis anzeigen

Verwende die Klasse \s mit dem Quantifizierer +, um aufeinanderfolgende Whitespace-Sequenzen zu erfassen.

Lösung nach 3 Versuchen verfügbar