Zauważyłem tu kilka postów dotyczących dopasowywania ciągów, które przypominały mi stary problem, który chciałbym rozwiązać. Czy ktoś ma dobry algorytm podobny do tego, który jest ważony w stosunku do klawiatur Qwerty?Dobry algorytm podobny do Levenshteina, ale ważony dla klawiatur Qwerty?
Chcę porównać dwa ciągi i pozwolić na literówki. Levenshtein jest w porządku, ale wolałbym również akceptować błędy pisowni na podstawie fizycznej odległości między klawiszami na klawiaturze QWERTY. Innymi słowy, algorytm powinien preferować "yelephone" do "zelephone", ponieważ klawisz "y" znajduje się bliżej klawisza "t" niż klawisza "z" na większości klawiatur.
Każda pomoc byłaby wspaniała ... ta funkcja nie ma zasadniczego znaczenia dla mojego projektu, więc nie chcę zejść do szczurzej dziury, gdy powinienem robić coś bardziej produktywnego.
cpan specjalista Kyle R. Burton rzeczywiście wdrożone [funkcja ta odległość] (http://search.cpan.org/~krburton /String-KeyboardDistance-1.01/KeyboardDistance.pm) w Perlu. Używa stołu do obliczenia wagi. Zobacz jego dokumenty dla pełnego stołu. –