Supongamos que tengo una tabla de base de datos con muchos nombres. Me gustaría "ajustar partido" contra estos nombres. No estoy seguro de si la "combinación flexible" es el término adecuado para usar, pero vamos con eso por ahora. Ha habido similardiscussions en "coincidencia difusa", pero no estoy realmente interesado en la coincidencia fonética. Estoy interesado en lo que llamaría coincidencia de subconjuntos ordenados.Flex Coincidencia de muchos registros de base de datos (parecida a Quicksilver o parecida a Launchy)
Me gustaría que funcione como QuickSilver (OSX) o Launchy (Windows). Aquí hay algunos ejemplos de resultados para una cadena de búsqueda determinado:
mit ⇒ M assachusetts I nstitute de T ecnología
FFox ⇒ F IRE zorro
osx ⇒ Mac OS X
ms ⇒ M ICROs Corporación menudo
Mi objetivo final es tener una página web con un campo de texto de auto-completar de que los datos impulsadas desde el servidor.
Estoy seguro de que obtendré los resultados adecuados en el lado del cliente mediante la combinación de características de jQuery LiveUpdate y/o jQuery QuickSelect.
Donde necesito ayuda es en cómo manejar mejor la coincidencia flexible en el lado del servidor contra una mesa grande. Tengo algunas ideas sobre cómo construir mi propio índice personalizado usando el Quicksilver scoringalgorithm y tal vez alguna lógica de índice de permutación, pero prefiero no reinventar la rueda si algo más está disponible.
En resumen:¿Cuál es la mejor manera de obtener una coincidencia de flexión rápida contra una tabla de base de datos con muchas filas?
+1 para Flexselect. –