Regex-Trainer
Lektionen › Lektion 1

1. Literale & der Punkt

Ein regulärer Ausdruck (Regex) ist ein Suchmuster für Text. Die einfachsten Muster bestehen aus ganz normalen Zeichen – sie passen genau auf sich selbst:

Muster passt auf
HTL „HTL“
abc „abc“, nicht aber „ABC“

Der Punkt . ist ein Metazeichen: Er steht für ein beliebiges Zeichen (außer Zeilenumbruch). h.t passt also auf „hat“, „hut“, „h7t“ …

Willst du einen echten Punkt suchen, musst du ihn mit einem Backslash escapen: \. Das gilt für alle Metazeichen: . ^ $ * + ? { } [ ] \ | ( )

import re
re.findall(r"HTL", "Die HTL Wien")      # ['HTL']
re.fullmatch(r"h.t", "hut")             # <re.Match ...>

Tipp: In Python schreibt man Regex immer als Raw-String r"...", damit Backslashes nicht verschluckt werden.

Übungen

1. Finde alle „HTL“

Finde jedes Vorkommen von HTL im Text.

Alle Treffer im Text müssen genau dem Ergebnis entsprechen (re.finditer).

Text

Die HTL Wien und die HTL Graz sind beide HTLs.

Erwartetes Ergebnis

HTLHTLHTL
r""
In Spielwiese öffnen

2. h?t

Passe auf jedes 3-Zeichen-Wort, das mit h beginnt und mit t endet.

Das ganze Wort muss passen (re.fullmatch).

soll passen

hathuthith7t

soll nicht passen

heathtHuthats
r""
In Spielwiese öffnen

3. Echter Punkt

Passe genau auf a.b – aber nicht auf „axb“.

Das ganze Wort muss passen (re.fullmatch).

soll passen

a.b

soll nicht passen

axba-bab
r""
In Spielwiese öffnen