Ich versuche, eine einfache Funktion zum Erfassen von Tippfehlern auszuarbeiten, z. B .:
%Vor%nach dem Fixieren:
%Vor%Erster Versuch:
%Vor%Ergebnis:
%Vor%Ich denke jedoch, dass dies effektiver gemacht werden könnte, und ich bekomme immer noch schlechte Ergebnisse, wenn ich etwas wie:
versuche %Vor% Offensichtlich sollte es London
und England
separat eintragen, aber ich glaube, dass meine Funktion überflickt wird und es einen einfacheren Ansatz gibt
Das Problem ist, dass Pythons re.split()
nicht auf Übereinstimmungen von null Länge aufgeteilt wird. Aber Sie können das gewünschte Ergebnis mit re.findall()
erhalten:
\d+
entspricht einer beliebigen Anzahl von Ziffern, [^\W\d_]+
entspricht einem beliebigen Wort.
Hier ist ein weiterer Ansatz, falls Sie es vorziehen, sich von Regex fernzuhalten, was manchmal unhandlich sein kann, wenn man nicht vertraut genug ist, um es selbst zu verändern / zu ändern:
%Vor%gibt zurück:
%Vor%Der Generator kann auch leicht modifiziert werden, um bei Bedarf keine Leerzeichen zu liefern.