[Python-de] AW: [Python-de] Reguläre Ausdrücke

Fischer, Thomas ThomasFischer at schmuecker.de
Mon Mar 4 16:36:51 EST 2002


Hallo!
Nach dem ausgezeichneten Tip von Christopher Arndt
möchte ich die Auflösung meines Problems in Quellcode 
schildern. Vielleicht interessiert es auch noch andere:

#doc=open("D:/Wordimport/test.txt").read()
oder:
doc="""Alle Vögel sind
schon da!"""
expr=re.compile(".*",re.DOTALL)
f=expr.findall(doc)
print f

... findet jetzt Zeilenübergreifend das Muster!

Ein Problem gibt es aber noch:
Umlaute werden dabei offenbar als Unicode dargestellt.
Hier lautet das Ergebnis:
'Alle V\xf6gel sind\nschon da!'

			Thomas


-----Ursprüngliche Nachricht-----
Von: Christopher Arndt [mailto:chris.arndt at web.de]
Gesendet: Montag, 4. März 2002 13:34
An: python-de at starship.python.net
Betreff: Re: [Python-de] Reguläre Ausdrücke


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
> 



_______________________________________________
Python-de maillist  -  Python-de at starship.python.net
http://starship.python.net/mailman/listinfo/python-de
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://starship.python.net/pipermail/python-de/attachments/20020304/12aaa989/attachment.htm


More information about the Python-de mailing list