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.
Creo que la segunda serie de palabras no debes añadirla a la primera. Por ejemplo algo así:
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.
Thank you so much. It works.