Hola Alvaro, On Fri, 2011-02-25 at 12:37 -0300, Alvaro Herrera wrote: > Excerpts from Daniel Juárez's message of jue feb 24 19:44:24 -0300 2011: > > Hola que tal, queria preguntarles si existia ya algo implementado en > > postgres para detectar errores de dedo? esto es, que el sistema manejador me > > de palabras parecidas a la que recibe como un "quiza quiso decir" con un > > query, no se queria ver si habia algo que me sirviera para esta tarea o > > tengo que aventarmelo a pata. De antemando muchas gracias y ojala me puedan > > contestar. > > Creo que tú quieres algo como esto: > http://www.smlnj.org/doc/ML-Yacc/mlyacc001.html#toc3 > > Si es así, la verdad es que no existe en Postgres y dudo que alguna vez > lo haga. > > Claudio Saavedra, un hacker de Gnome, estaba trabajando en su tesis para > implementar una cosa de este estilo en Bison, pero no sé en qué habrá > quedado su trabajo. Por lo que me contó (hace ya varios años) agregaba > un cierto overhead, no mucho pero suficiente como para que los hackers > de Postgres lo consideren demasiado caro.
Por lo que describís, quizá lo que necesitáis es algún algoritmo para sugerir correcciones basado en la distancia de Levenshtein [1], que me parece más apropiada para sugerencias en ese tipo de errores. Probablemente combinada con algún tipo de detección de errores gramaticales, pero creo que Burke-Fisher[2] (lo que yo implementé para Bison) es mucho más genérico. Yo echaría un vistazo a la implementación de git, si entiendo correctamente es lo que estáis buscando. Claudio [1] http://en.wikipedia.org/wiki/Levenshtein_distance [2] http://portal.acm.org/citation.cfm?id=22720 -- Claudio Saavedra <csaave...@gnome.org> - Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org) Para cambiar tu suscripci�n: http://www.postgresql.org/mailpref/pgsql-es-ayuda