Лучший алгоритм для поиска похожего текста
Я пытаюсь объединить записи в базе данных, я использую алгоритм Левенштейна и работает в некоторых случаях,
Рабочий образец (расстояние <= 2):
* --------- * ---------- * -------- *
| Looking | Finds | Distance |
* --------- * ---------- * -------- *
| No existe | No Existe | 1 |
| desempleo | Desempleo | 1 |
* --------- * ---------- * -------- *
это здорово, но игнорирует случаи с мэрами, как:
Femenino
а такжеFEMENINO
с 7 расстояния
Примечание: я ищу решение PHP
1 ответ
Решение
Сравнить
echo levenshtein("Femenino", "FEMENINO"); // 7
В.С.
echo levenshtein(strtolower("Femenino"), strtolower("FEMENINO")); //0
Если регистр букв не имеет значения для вашего приложения, перед сравнением сделайте одинаковые регистры, и вы получите значительное улучшение.