Algoritmo de búsqueda

ALguien puede ayudarme a encontrar algún tipo de algoritmo de búsqueda osea, que no busque la palabra exacta...

2 Respuestas

Respuesta
1
Necesito más información para saber que tipo de algoritmo buscas. ¿Es una búsqueda en un sitio web, en un array, en una base de datos, en un documento concreto, ...?
Si buscas en un documento o una cadena de texto, puede servirte la funcion ereg(patron_de busqueda, cadena_donde_se_busca, array_de_resultados)
Si buscas en MySQL, lo que necesitas es el modificador "LIKE"...
La sintaxis necesaria la encontraras en las web de php y myslq. Pero si quieres que las apliquemos a tu caso concreto, me tienes que dar más información al respecto de que es exactamente lo que quieres hacer.
Primero gracias por tu respuesta, la idea es la siguiente estoy paginando datos con php en una base mysql, el problema es que cuando uso like %% si o si la persona que busca algo tiene que poner la palabra o frase justa, me gustaría un algoritmo que realiase la búsqueda pero por la frase exacta o que contenga esas palabras el campo... no se si me explico bien. Te hago un ej
Frase a buscar:"hola como andas"
Entonces en la paginación me salga primero si se encuentra la frase completa, después que se yo, "hola como", "como andas", "hola andas" etc. no se si soy claro... bueno igualmente desde ya muchas gracias.
Te envío un ejemplo para que veas como puedes descomponer la frase a buscar en palabras:
<?php
$frase="hola como andas";
$claves=explode(' ', $frase);
$patron="SELECT * FROM tabla WHERE ";
foreach ($claves as $v) {
$condicion[] = "campo LIKE '%$v%'";
}
$query = $patron . implode(" OR ", $condicion);
print $query;
?>
De esta forma puedes hacer la búsqueda completa con la frase y meter los resultados en un array, hacer la búsqueda con las palabras sueltas de la frase y añadirlo al mismo array con lo que te salen ordenadas por "grado de coincidencia"
¿Es eso más o menos lo que quieres?
Un saludo. Hasta otra.
Respuesta

Usa el operador Full-Text de mysql te dejo un link con ejemplos se que paso unrato desde que andabas buscando pero para futuras ocasiones aquí el enlace http://mysql.localhost.net.ar/doc/refman/5.0/es/fulltext-search.html

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas