Ver Mensaje Individual
  #24  
Antiguo 08-05-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Reputación: 27
Delphius Va camino a la fama
Cita:
Empezado por roman Ver Mensaje
El problema empieza con las preposiciones y artículos, porque ahí ya estamos hablando de analizar palabras y no sólo caracteres. Esa parte ya me da flojera
¿Es contagiosa? Porque no se si tu me contagiaste a mi o yo te contagié.
Ahora en serio,
Lo más fácil que se me ocurre es que una vez hecho las conversioes necesarias. Buscar en una lista de preposiciones y artículos posibles y por cada uno ir viendo si existe, y en caso de ser así reemplazar...
Algo como:

Código Delphi [-]
Posic = Pos(ListaArticulo[i], Texto)
if Posic <> 0
  then StringReplace(texto,Articulo,LowerCase(Texto), [rfReplaceAll])

El problema es que como bien puede verse... si hay algún de, la o algo por el estilo en el nombre (como Demetrio, Laura por mencionar algunos) el algoritmo falla.

esto se soluciona si se lleva simple pre-análisis:

Código Delphi [-]
if (Posic <> 0) AND (Texo[Posic - 1] = ' ')

Por ahora tengo eso. Lo escribí al vuelo, pero creo que se entiende más o menos la idea.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita