Wie Regex-Match zwischenspeichern

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
fragibo
User
Beiträge: 1
Registriert: Mittwoch 27. Dezember 2017, 14:06

Ich habe eine Textdatei und möchte diese Zeilenweise nachbearbeiten.
Als Python Neuling benötige ich noch Starthilfe. Bitte korrigiert meine Fehler :)
Ich habe meine Textdatei geöffnet jede Zeile in ein eigenes Feld des Arrays geschrieben, mit: foo = file.readlines().
In einer Schleife möchte ich dieses Array Zeile um Zeile durchgehen und überprüfen, ob in dieser Zeile das Wort "Eingeschaltet" vorhanden ist.
Folgender Ausdruck funktioniert jedoch nicht:
while i < len(foo):
bla = re.match("Haus", foo)
print bla

Der Variablen bla wird immer der Wert "None" zugewiesen.
Wie kann ich überprüfen, ober der String "Eingeschaltet" in meiner aktuellen Zeile vorhanden ist und die Zeilennummer zwischenspeichern?
Benutzeravatar
kbr
User
Beiträge: 1487
Registriert: Mittwoch 15. Oktober 2008, 09:27

Auch in Python gibt es Arrays, was Du aber nutzt ist eine Liste. Deine Herangehensweise ist auch eher von einer anderen Sprache geprägt. Versuche es mal mit einer for-Schleife sowie dem in-Operator. Solange, bis es klappt ... :wink:
Benutzeravatar
snafu
User
Beiträge: 6740
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Zudem kann man direkt über das Dateiobjekt iterieren, sodass man nicht den Zwischenschritt mit readlines() braucht.
Benutzeravatar
/me
User
Beiträge: 3555
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

Und wenn man schon reguläre Ausdrücke verwendet, dann sollte man den einen entscheidenden Unterschied zwischen re.match und re.search beachten!
Antworten