En esta segunda parte presentaré un ejemplo práctico en pseudocódigo, de fácil implementación en cualquier lenguaje.

El caso práctico

Tenemos una tabla con artículos de cualquier tipo tal que así:

+-------------------------------+
|  articulo                     |
+------+----------+-------------+
|  id  |  titulo  |  contenido  |
+------+----------+-------------+

Pero muchos artículos se esconden detrás de las palabras cortas y acaban siendo inútiles, así que… ¡toca actualizarse!
Para esta implementación, vamos a añadir una nueva columna para guardar el título modificado:

+-------------------------------------------------------+
|  articulo                                             |
+------+----------+-----------------------+-------------+
|  id  |  titulo  |  titulo_modificado    |  contenido  |
+------+----------+-----------------------+-------------+

Como ya teníamos artículos en la tabla, esta nueva columna estará vacía, por lo que el primer paso será rellenarla. Para ello, implementamos la función alargadora que se encargará de transformar el título de nuestros artículos.

funcion modificar_titulo ( titulo ) {
	palabra = separar_palabras (titulo);
	para cada palabra hacer {
		si ( tamaño(palabra) <= 3 ) entonces {
			titulo_modificado += palabra + hash(palabra) + “  “; // no os olvideis de los espacios!!
		} si no {
			titulo_modificado += palabra + “  “; // no os olvideis de los espacios!!
		}
	}
	retornar titulo_modificado;
}

Ahora, ya podemos rellenar la columna con este sencillo script:

funcion actualizar_tabla_articulo () {
	sql = “ select * from artiulo “;
	resultado = mysql_query( sql );
	mientras ( resultado ) recorrer tabla {
		id = fila[ id ];
		titulo = fila[ titulo ];
		sql = “ update articulo set titulo_modificado = ‘ “ + modificar_titulo (titulo) + “ ‘ where id = “ + id; 
		mysql_query( sql );
	}
}

Función creada y base de datos rellena … ¡ya lo tenemos todo!.

El funcionamiento es muy sencillo, cuando un usuario decide hacer una búsqueda:

“amantes del ron”

Antes de hacer la consulta a nuestra base de datos, tendremos que pasar la cadena por nuestra función modificar_titulo, para alargar las palabras cortas. Evidentemente, la búsqueda ahora se hará sobre la columna titulo_modificado y usaremos la columna titulo simplemente para mostrar el título original.

Algunos detalles

No hay que olvidarse de actualizar la columna titulo_modificado cada vez que insertemos un nuevo artículo. Una buena idea sería implementar esta función en nuestro gestor de contenidos para que se rellenará de forma automática y no tener que pasar el script actualizar_tabla_artículo continuamente.