Forum: Rails-ES contar las palabras de un array

Cf4554c6cb6b3c0016b093ab2355a9a6?d=identicon&s=25 Marcos Pérez (navjav10)
on 2010-05-15 01:03
Buenas noches!
Estoy haciendo un programa en Ruby en el que primero tengo que meter
unas cuantas palabras en un array, y luego tengo que pedir por pantalla
(en la consola) que me diga cuántas veces aparece en ese array la
palabra que me interesa.
Este es mi programa:


def cargar(carpeta)
     array=[]
       while(linea=carpeta.gets)
            if (linea.downcase=~ /"<\$?\"?(.*)>"/)
              array.push("#{$1}")
            end
          end
return array
end


def contar(array,palabra)
       n=0
       until(n==array.to_s.count(palabra)
            array.include? "#{palabra}"
            n=n+1
            end
        end
        puts n
end


carpeta=File.open(ARGV[0])
array=cargar(carpeta)
palabra=(ARGV[1])
contar(array,paraula)


Entonces por ejemplo yo entro en la consola:

prac5dosmet.rb entrada.txt jugar

donde (prac5dosmet.rb es el nombre del programa de ruby, entrada.txt es
el nombre donde esta el texto con las palabras y "jugar" es la palabra
que quiero que busque en el texto y me diga las veces que aparece.

Sé donde falla mi programa, pero no se como decirlo en lenguaje ruby:
Falla en esta parte:

until(n==array.to_s.count(paraula)

Aqui quiero decirle que "hasta que n sea igual a las veces que aparece
la palabra en el array".
Espero que puedan ayudarme.

Muchas gracias a todos!
This topic is locked and can not be replied to.