2009-07-02 7 views
2

Je sais que c'est une question vraiment simple mais mon google-fu me manque. Je veux obtenir plusieurs entrées d'utilisateur de ligne dans Ruby, car vous obtenez seulement une ligne d'entrée. Je veux être en mesure de stocker cette entrée de ligne multiple dans une chaîne afin que je puisse sortir la chaîne à la fin d'un fichier. Y at-il une commande disponible pour le faire? Merci d'avance!Comment obtenir une entrée utilisateur multi-ligne dans Ruby?

Répondre

7

Essayez ceci:

$/ = "END" 
user_input = STDIN.gets 
puts user_input 

L'utilisateur peut alors continuer d'entrer une entrée multiple ligne et termine son entrée en tapant END. Gardez à l'esprit qu'IRB ne gère pas bien cet extrait de code, alors assurez-vous d'utiliser l'interpréteur ruby ​​actuel.

De même, l'entrée user_input stocke la FIN finale saisie par l'utilisateur, de sorte que vous devrez la supprimer. Vous pouvez également utiliser n'importe quelle autre chaîne à la place de END pour que l'utilisateur indique qu'il a terminé la saisie.

+0

Merci! Travaillé parfaitement! –

+2

pouvez-vous expliquer '$/=" END "' dans cet exemple de code? – inquisitive

Questions connexes