Wichtig: Das Module re
(Regular Expressions) muss einmal importiert werden.
import re
re.findall(".ie.", "Viele Beispiele eieiei!")
# Liefert ["Viel", "piel", "eiei"]
re.findall("(\d{1,2})-(\d{1,2})-(\d{4})", "Am 9-11-2013 war Samstag und am 10-11-2013 Sonntag.")
# Liefert [("9", "11", "2013"), ("10", "11", "2013")]
Zeichen | Bedeutung | Match't | match't nicht | |
. | Genau ein beliebiges Zeichen (ausser \n) | | | |
[aeiou] | Genau ein Zeichen in der Klammer | e | f | |
[a-f] | Genau ein Zeichen im Bereich | b | s | |
[ | 3-9] | Genau ein Zeichen das nicht aufgeführt ist. | Z | 3 |
| | Anfang der Zeichenkette | | |
$ | Ende der Zeichenkette | | | |
| | Oder (der Ausdruck davor oder danach) | | | |
() | Gruppe | | | |
Zeichen | Bedeutung | Match't | match't nicht |
\d | Eine Ziffer, wie [0-9] | 5 | B |
\w | Ein Zeichen, das in einem Wort vorkommen kann. | r | ; |
\b | Anfang oder Ende eines Worts | | |
\s | Ein Leerschlag oder Tabulator | | |
\n | Ein Zeilenumbruch | | |
\\ | Ein Backslash | \ | / |
\. | Ein Punkt | . | x |
\( | Eine Klammer | ( | ) |
Wird eine Zeichenklasse gross geschrieben, invertiert sich die Auswahl. Z.B. ist \D irgendein Zeichen ausser einer Ziffer, also wie [^0-9].
Zeichen | Bedeutung |
* | 0 bis beliebig viele des Ausdrucks davor (maximal) |
*? | 0 bis beliebig viele des Ausdrucks davor (minimal) |
+ | 1 bis beliebig viele des Ausdrucks davor (maximal) |
+? | 1 bis beliebig viele des Ausdrucks davor (minimal) |
? | 0 oder 1 des Ausdrucks davor (maximal) |
{5} | Genau 5 mal den Ausdruck davor |
{2,5} | Zwischen 2 und 5 mal den Ausdruck davor (maximal) |
{2,5}? | Zwischen 2 und 5 mal den Ausdruck davor (minimal) |