Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: Saito_25 en 28 Marzo 2015, 19:31 PM

Título: Duda con código simple (creo) en Ruby.
Publicado por: Saito_25 en 28 Marzo 2015, 19:31 PM
Bueno, creo que tengo una duda de nobs, o al menos eso creo. Espero que me puedan contestar, por favor. Y gracias adelantadas  ;).

En fin, estoy haciendo un ejercicio que me pide que dada una frase por el usuario, y después dadas unas serie de palabras por el mismo, verifique si las segundas palabras se encuentran en las primeras y si es así, esas palabras se sustituyan por CONFIDENCIAL.

puts "Hola, expón el texto a investigar."
texto = gets.chomp
puts "Hola, expón las palabras a pulgar separadas con espacios."
modificar = gets.chomp

palabras = texto.split(" ")
modificadoras = texto.split(" ")

palabras.each do |palabra|
    if
        print palabra + " "
    else
        print "CONFIDENCIAL" + " "
    end
end


En fin, yo introduzco, por ejemplo este texto:
La luna roja, se tiño por el color de tus labios, el mar blanco perdió el color por el resplandor de tu piel, y el cálido se enfrío por tus lágrimas de miel.

Ahora, en el segundo gets.chomp añado las palabras: luna mar sol
Sin comas y separas por un espacio.

Como hago para que me verifique el código si las segundas palabras están en el texto y me las cambie por CONFIDENCIAL.
Título: Re: Duda con código simple (creo) en Ruby.
Publicado por: Usuario Invitado en 28 Marzo 2015, 19:49 PM
Creo que la segunda serie de palabras no debes añadirla a la primera. Por ejemplo algo así:

Código (ruby) [Seleccionar]
var palabras = modificar.split(" ");
palabras.each do |palabra|
   if texto.include? palabra # si el texto contiene la palabra
       texto.gstub! palabra, "CONFIDENCIAL" # se reemplaza por CONFIDENCIAL
   end
end


Recorres las palabras a verificar y compruebas si el texto la contiene (texto.include? palabra). Si es verdadero reemplazas todas las apariciones de dicha palabra por CONFIDENCIAL (texto.gstub! palabra, "CONFIDENCIAL").

No manejo Ruby, pero inténtalo.


Saludos.
Título: Re: Duda con código simple (creo) en Ruby.
Publicado por: Saito_25 en 28 Marzo 2015, 20:18 PM
Thank you so much. It works.