Hi Community,
gibt es unter python eine art fehlertolerantes Suchverhalten, sprich, der User tippt "Schwewin" ein und er bekommt als Verbesserungsvorschlag "Schwein" angeboten?
Ein Art Wörterbuch mit den verfügbaren Wörtern habe ich bereits.
Vielen Dank für eure Hilfe
Fehlertolerantes Suchen
Hallo,
für eine ähnliche Aufgabenstellung hatte ich mal das Modul difflib verwendet. Davon ausgehend könntest du dir etwas passendes basteln. Sowas richtig einzustellen bzw. zu trainieren kann aber ziemlich aufwändig werden. Wenn du nur einen relativ geringen "Wortschatz" hast, wäre es vermutlich einfacher, ein Dictionary mit gängigen Tippfehlern und den richtigen Versionen anzulegen.
für eine ähnliche Aufgabenstellung hatte ich mal das Modul difflib verwendet. Davon ausgehend könntest du dir etwas passendes basteln. Sowas richtig einzustellen bzw. zu trainieren kann aber ziemlich aufwändig werden. Wenn du nur einen relativ geringen "Wortschatz" hast, wäre es vermutlich einfacher, ein Dictionary mit gängigen Tippfehlern und den richtigen Versionen anzulegen.
hier vielleicht: http://stackoverflow.com/questions/6823 ... comparison
Je nach Geschmack kann man da über die Levenshtein-Distanz oder mit Soundex etwas basteln. Vorgefertigtes gibt es in der Standardbibliothek AFAIK nicht.anogayales hat geschrieben:Hi Community,
gibt es unter python eine art fehlertolerantes Suchverhalten, sprich, der User tippt "Schwewin" ein und er bekommt als Verbesserungsvorschlag "Schwein" angeboten?
difflib wurde doch schon erwähnt. Ich habe mit der Funktion get_close_matches aus diesem Modul mal ein Script geschrieben, um eingescannte, deshalb zum Teil fehlerhafte Namen an Hand einer vorgegebenen Namensliste zu korrigieren. Das war ganz einfach und funktionierte recht gut./me hat geschrieben:Vorgefertigtes gibt es in der Standardbibliothek AFAIK nicht.
MfG
HWK