Reguläre Ausdrücke - Ausgabe

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
Neu111
User
Beiträge: 69
Registriert: Dienstag 10. März 2020, 19:02

Hallo in die Runde,
ich hänge an einem einfachen (?) Problem fest:

Code: Alles auswählen

var1 = re.search("\d{2}/\d{2}/\d{2}",text11)
print(var1)
Als Ausgabe bekomme ich immer nur 1 Treffer zurück, obwohl in der Variable "text11" der String mehrmals vorkommt.

Was mache ich falsch?
Sirius3
User
Beiträge: 18272
Registriert: Sonntag 21. Oktober 2012, 17:20

Weil re.search nur nach dem ersten Vorkommen sucht. Schau mal in die Dokumentation, ob es nicht noch eine andere Funktion gibt, die besser zu Deinem Problem passt.
Benutzeravatar
__blackjack__
User
Beiträge: 14052
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

`var1` und `text11` lassen böses ahnen. Man nummeriert keine Namen durch sondern vergibt *ordentliche* Namen. Das ist auch keine Kosmetik oder so, das ist wichtig zum Verständnis des Quelltextes. Der sollte so geschrieben sein das Menschen ihn verstehen, nicht nur so das der Computer die Namen auseinanderhalten kann.
“Vir, intelligence has nothing to do with politics!” — Londo Mollari
Neu111
User
Beiträge: 69
Registriert: Dienstag 10. März 2020, 19:02

Lösung:

re.search durch re.findall ersetzen.
Antworten