Как получить многострочный пользовательский ввод в Ruby?

Я знаю, что это очень простой вопрос, но мой гугл-фу подводит меня. Я хочу получить многострочный пользовательский ввод в Ruby, так как gets дает вам только одну строку ввода. Я хочу иметь возможность сохранить этот многострочный ввод в строку, чтобы я мог вывести строку в конец файла. Есть ли команда для этого? Заранее спасибо!


person Javed Ahamed    schedule 02.07.2009    source источник


Ответы (1)


Попробуй это:

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

Затем пользователь может продолжать вводить многострочный ввод и заканчивать ввод, набрав END. Имейте в виду, что IRB плохо обрабатывает этот фрагмент кода, поэтому убедитесь, что вы используете настоящий интерпретатор ruby.

Кроме того, user_input хранит окончательный END, введенный пользователем, поэтому вам нужно его удалить. Вы также можете использовать любую другую строку вместо END, чтобы пользователь мог указать, что он закончил ввод.

person Praveen Angyan    schedule 02.07.2009
comment
можете ли вы объяснить $/ = "END" в этом примере кода? - person inquisitive; 22.05.2015