Die meisten häufig falsch geschriebenen englischen Wörter liegen innerhalb von zwei oder drei typografischen Fehlern (eine Kombination von Ersetzungen s , Einfügungen i oder Buchstabenlöschungen d ) von ihrer korrekten Form. I.e. Fehler in dem Wortpaar absence - absense
können zusammengefasst werden als 1 s , 0 i und 0 d .
Mit dem to-replace-re Regex-Python-Modul kann man Fuzzy-Matches finden, um Wörter und ihre Rechtschreibfehler zu finden .
Die folgende Tabelle fasst die Versuche zusammen, die für die Fuzzy-Segmentierung eines Worts von Interesse aus einem Satz gemacht wurden:
word
Übereinstimmung in sentence
und erlaubt höchstens 2
Fehler word
Übereinstimmung in sentence
erlaubt auf
die meisten 2 Fehler beim Versuch, nur auf (glaube ich) ganze Wörter zu operieren word
Übereinstimmung in sentence
erlaubt um
die meisten 2 Fehler beim Betrieb nur auf (glaube ich) ganze Wörter. Ich liege irgendwie falsch. word
Übereinstimmung in sentence
erlaubt
Die meisten 2 Fehler während (glaube ich) auf der Suche nach dem Ende des Spiels, um eine Wortgrenze zu sein Wie würde ich einen Regex-Ausdruck schreiben, der, wenn möglich, falsch positive und falsch negative Fuzzy-Matches bei diesen Wort-Satz-Paaren eliminiert?
Eine mögliche Lösung wäre, nur Wörter (Zeichenketten, die von Leerzeichen oder dem Anfang / Ende einer Zeile umgeben sind) im Satz mit dem Wort von Interesse (Hauptwort) zu vergleichen. Wenn zwischen dem Hauptwort und einem Wort im Satz eine unscharfe Übereinstimmung (e & lt; = 2) besteht, dann gebe das vollständige Wort (und nur dieses Wort) aus dem Satz zurück.
Kopieren Sie den folgenden Datenblock in Ihre Zwischenablage:
%Vor%Verwenden Sie jetzt
%Vor%Um die Tabelle in Ihre Umgebung zu laden.
Tags und Links python regex fuzzy-search