Ver Mensaje Individual
  #7 (permalink)  
Antiguo 24/12/2014, 10:18
Avatar de America|UNK
America|UNK
 
Fecha de Ingreso: noviembre-2006
Ubicación: Piura - Perú
Mensajes: 582
Antigüedad: 17 años, 5 meses
Puntos: 56
Respuesta: Contar palabras repetidas

Si ya estás usando navegadores modernos puedes usar el método map, luego de convertir el texto en array y recorrer cada palabra guardando en otro array donde va el conteo de cada palabra repetida. Si quieres compatibilidad para navegadores antiguos puedes usar map de jQuery.
Código Javascript:
Ver original
  1. function contarPalabras(s){
  2.     var r = {}
  3.     s = s.split(/\s+/).map(function(a){ !r[a] && (r[a] = 0); r[a]++ })
  4.     return function(what){
  5.         return {"palabras": s.length, "espacios": s.length - 1, "repeticiones": r}[what]
  6.     }
  7. }
  8.  
  9. var result = contarPalabras("Hola me llamo Hola")
  10.  
  11. result("palabras") //4
  12. result("espacios") //3
  13. result("repeticiones") //{Hola: 2, me: 1, llamo: 1}
  14. result("repeticiones")["Hola"] //2
__________________
/* El que atiende, entiende..., el que entiende, aprende!.
Desarrollo Web Freelance, Contactar */