[Python-de] Reguläre Ausdrücke

Christopher Arndt chris.arndt at web.de
Mon Mar 4 13:33:53 EST 2002


1. Die Datei muss in einen einzigen String eingelesen sein, d.h.

t = file.read()

und _nicht__:

Falsch: t = file.readlines()

2. Der reguläre Ausdruck muss durch die Option re.DOTALL für
    re.compile() oder durch '(?s)' im regulären Ausdruck dazu gebracht
    werden, auch das newline Zeichen für '.' zuzulassen.

Ebenfalls ist evtl. die re.MULTILINE Option interessant.


Referenzen:
http://py-howto.sourceforge.net/regex/regex.html    <-- unbedingt lesen!
http://www.python.org/doc/current/lib/module-re.html


Fischer, Thomas wrote:

> Hallo!
> Ich möchte über re.findall("Muster",file) Text in einem Dokument suchen, 
> welcher über
> mehrere Zeilen gehen kann.
> In der Literatur zu "regulären Ausdrücken" wird für die Suche über 
> mehrere Zeilen das Muster [] angegebnen.
> Also :*** H[]d* über zwei Zeilen hinweg "*Hello* (cr -lf)* World*".
> Wenn ich das mit re.findall probiere gibt es eine dicke Fehlermeldung!
> Gibt es dieses Muster nicht in Python?
> Wie kann ich dann über mehrere Zeilen suchen?
> 
> 
>                         Thomas
> 






More information about the Python-de mailing list