Consulta con tildes

23/05/2005 - 19:29 por richi | Informe spam
Hola amigos,

estoy haciendo un buscador sobre texto y tengo problema con las comillas.

He visto que el "_" sirve de comodín en access.

Por lo que si quiero buscar "notícias" veo que hay una vocal con tilde y
buscaré "not_cias". El problema es cuando busco "noticias" sin tilde al ser
sin tilde el sql no buscará "notícias"

He buscado por muchos sitios pero solo encuentro codigo en ingles, que como
no tienen acentos no tratan este asunto.

Alguien sabe como solucionar este problema?


Saludos.
 

Leer las respuestas

#1 Miguel Gonzalez
24/05/2005 - 12:20 | Informe spam
Hola Richi.

Entiendo tu problema, pero no tiene fácil solución.

Al igual que no te encuentra "notícias", tampoco te encontrará
"nóticias", "noticías", "nòticias", "notïcias", etc.

De la misma forma, si usas el comodín, te encontrará "notocias",
"not3cias", "not-cias", etc.

Como puedes ver, la búsqueda no llegará a ser muy precisa.

Creo que en este tema hay que partir de la siguiente premisa: "el
usuario busca lo que quiere encontrar". Confiar, por tanto, en que el
usuario, si quiere encontrar algo, probará las diferentes posibilidades
de búsqueda. Una opción de ayuda a la búsqueda sería comparar las
palabras que está buscando el usuario con un diccionario y, si están mal
escritas, ofrecerle realizar la búsqueda con la palabra correcta (algo
parecido a lo que hace el Google)

Ahora bien, si quieres obviar el tema "tildes" en las búsquedas deberías
actuar en dos aspectos:

a) Sustituir todas las búsquedas con tilde por su equivalente sin tilde
mediante un "replace":

Replace(cadena, "í", "i")

b) En la base de datos, cuando se almacenan o modifican datos, guardar
una copia en una tabla de búsquedas en la que se guarden dichos datos
sin tilde (utilizando un mecanismo de reemplazamiento similar al anterior)

Saludos!
Miguel


richi wrote:
Hola amigos,

estoy haciendo un buscador sobre texto y tengo problema con las comillas.

He visto que el "_" sirve de comodín en access.

Por lo que si quiero buscar "notícias" veo que hay una vocal con tilde y
buscaré "not_cias". El problema es cuando busco "noticias" sin tilde al ser
sin tilde el sql no buscará "notícias"

He buscado por muchos sitios pero solo encuentro codigo en ingles, que como
no tienen acentos no tratan este asunto.

Alguien sabe como solucionar este problema?


Saludos.


Preguntas similares