2011-10-20 6 views
0

だから私はルビーでここにドキュメントをどのように処理するかを思ったんだけど、例えば、これは私のプログラムでは、メインループです:ルビー、UNIXおよびヒアドキュメント

begin 
    word = gets 
    if word.nil? 
     next 
    end 
    command = word.chomp.to_s 
    print word 
end until (word.eql? "EOI") 

と私は./file <<EOI

を行うことによって、それを実行します

しかし、ユーザーが終了文字列として使用しているものを変更した場合、最後の行は明らかに失敗します。ユーザーが終了文字列として指定したものを検出するためのグローバル変数がありますか?そうでない場合は、<<EOIを処理する最良の方法は何ですか?

ありがとうございます。

サンプル入力:ユーザーがEOFCtrl-d)を送信した場合も、ケースになりますがword.nil?までだけではなく、ループを行う理由

hello 

world 
EOI 

答えて

2

任意の理由は?

until (word = gets).nil? 
    print word.chomp 
end 
関連する問題