Tengo un sitio que enumera películas. Naturalmente las personas cometen errores ortográficos al buscar películas, y por supuesto que algunas películas tienen apóstrofes, usan letras para deletrear números en el título, etc.¿Cuál es la mejor manera de implementar la corrección de errores en una búsqueda en php/mysql?
¿Cómo hago para que mi script de búsqueda pase por alto estos errores? ? Probablemente necesite algo que sea un poco más inteligente que WHERE mov_title LIKE '%keyword%'
.
Se sugirió que use un motor de búsqueda de texto completo, pero todas esas cosas se ven muy complicadas, y creo que su construcción en mi aplicación será como el infierno en la tierra. Si tengo que usar uno, ¿cuál es el menos invasivo, será más fácil implementarlo en el código existente?
¿Lucene tiene reconocimiento de errores tipográficos incorporado? ¿Qué pasa con sphinxsearch? –
Sí, Lucene admite consultas de búsqueda difusa. El algoritmo se basa en la distancia de Levenshtein. La API de Java se ve así: http://lucene.apache.org/java/2_2_0/api/org/apache/lucene/search/FuzzyQuery.html – PatrikAkerstrand
¿No hay otra forma que no sea usar Lucene? –