from parsy import regex a = regex(r"\d{1,4}").descr("Year").map(int)
from parsy import regex a = regex(r"\d{1,4}")
Einige mögliche Funktionen die Parser erstellen können:
Funktion | Beschreibung | |
---|---|---|
regex | Es wird ein regulärer Ausdruck ausgewertet | |
string | Es wird ein String gegen zu prüfenden Wert geprüft | |
char_from | Zeichenkette | Prüfe auf ein Zeichen aus einer Liste von Zeichen (repräsentiert durch eine Zeichenkette). Entspricht das aktuelle Zeichen einem der Zeichen in der angegeben Kette dann ist der Parser erfolgreich |
string_from | Tuple von Zeichenketten | Prüft ob irgend eine der angegebenen Zeichenketten auf die zu prüfende Zeichenkette zutrifft. Wenn eine passt ist der Parser erfolgreich |
Es gibt auch vorgefertigte Parser-Objekte. Diese können
Parser | Beschreibung | |
---|---|---|
regex | Es wird ein regulärer Ausdruck ausgewertet | |
string | Es wird ein String gegen zu prüfenden Wert geprüft | |
char_from | Zeichenkette | Prüfe auf ein Zeichen aus einer Liste von Zeichen (repräsentiert durch eine Zeichenkette). Entspricht das aktuelle Zeichen einem der Zeichen in der angegeben Kette dann ist der Parser erfolgreich |
string_from | Tuple von Zeichenketten | Prüft ob irgend eine der angegebenen Zeichenketten auf die zu prüfende Zeichenkette zutrifft. Wenn eine passt ist der Parser erfolgreich |
Methode | Parameter | |
---|---|---|
parse | Zeichenfolge | Parst die übergebene Zeichenfolge. Die Regel in Parser oder einer der Parser die der Parser aufruft müssen zusammen die gesamte übergebene Zeichenkette abdecken. Wird sie nicht abgedeckt wird ein ParseError geworfen |
parse_partial | Zeichenfolge | |
descr | Fügt eine Beschreibung hinzu für was der Parser steht (also für welche Zeichenfolge). Diese Information wird bei einer Exception ausgegeben statt der Zeichenkette die nicht gefunden wurde. Die Beschreibung kann auch beim Erzeugen des Parsers als zweiter Parameter angeben werden |
|
map | Typ | Wandle das Ergebnis des Parsers in den gewünschten Typ um |