Seite 1 von 1

inexakte stringsuche

Verfasst: Freitag 1. August 2008, 10:33
von jean
hallo,

ich finde leider nichts,wie ich in python bei einer stringsuche 1-2 missmatches zulassen kann. kann mir da jemand helfen?


gruß,
jean

Verfasst: Freitag 1. August 2008, 10:38
von Area51
Theoretisch könnte es so klappen:

Code: Alles auswählen

mismatch = 0
allowed = 2

while mismatch < allowed:
    if re.match ('/regEx/', string) == False:
        mismatch =+ 1

Verfasst: Freitag 1. August 2008, 11:14
von jean
des endet leider in ner endlosschleife :(
habs auch schon mit re.search probiert (match sucht ja nur am anfang, ändert aber nichts.
trotzdem vielen dank für die schnelle antwort

Verfasst: Freitag 1. August 2008, 11:50
von Area51
Die endlosschelife könte man so umgehen

Code: Alles auswählen

while mismatch < allowed:
    if re.search ('/regEx/', string) == False:
        mismatch =+ 1

    if mismatch == allowed:
        break;

Verfasst: Freitag 1. August 2008, 12:03
von jean
des funktioniert auch nich, der abbruchfall war ja ok. des problem is (denk ich) dass nur einmal hochgezählt wird

Verfasst: Freitag 1. August 2008, 13:26
von HWK
Willst Du eventuell ähnliche Strings finden? Dann solltest Du Dir mal das Standardmodul difflib anschauen. Ansonsten solltest Du noch einmal im Detail erläutern, was Du genau willst.
MfG
HWK