Foros del Web » Programando para Internet » PHP »

nube de tags inteligentes?

Estas en el tema de nube de tags inteligentes? en el foro de PHP en Foros del Web. Hola: tengo un script que arma una nube de tag lo hace super bien, pero ahora se me planto un desafio y nose como encararlo, ...
  #1 (permalink)  
Antiguo 15/04/2009, 13:26
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
nube de tags inteligentes?

Hola:
tengo un script que arma una nube de tag lo hace super bien, pero ahora se me planto un desafio y nose como encararlo, lo que necesito es que el script sea capaz de asociar palabras y crear el tag por ejemplo si en el texto dice:
el presidente de estados unidos, junto al presidente de cuba se fueron de locas por la zona roja de palermo. Mientras la presidenta K y su compatriota B se divertian de lo loco en el golden.

Lo que necesito es que me arme una nube asi:
presidente
estados unidos
presidente estados unidos
cuba
presidente cuba

Es decir ser capaz de saber que si es presidente la palabra puede venir seguida de un pais o el nombre de una persona.

Espero que se haya entendido, desde ya muchas gracias
  #2 (permalink)  
Antiguo 15/04/2009, 13:50
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: nube de tags inteligentes?

es igual de super simple!

haces un explode() de las palabras de la oración...

luego, iteras el array sumando cada ves que se encuentre la misma palabra...

Código PHP:
$texto "el presidente de estados unidos, junto al presidente de cuba se fueron de locas por la zona roja de palermo. Mientras la presidenta K y su compatriota B se divertian de lo loco en el golden.";

$texto preg_replace('/[^\sa-z0-9]/i'''$texto);
$texto strtolower($texto);

$salida = array();

foreach (
explode(' '$texto) as $word)
{
  if ( ! isset(
$salida[$word]))
  {
    
$salida[$word] = 1;
  }
  else
  {
    
$salida[$word] += 1// u otro factor...
  
}
}

var_dump($salida); 
ya después, ya sabes como hacer tu nube de tags...


suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:13.