- ベストアンサー
rubyで変数の値を表示させたい
rubyで50個の文字 str1,str2,str3,...,str50 があります。 これをすべて表示したいのですが 50.times{|i| print str#{i} } ではエラーになってしまいます。 何かよい方法はないのでしょうか? 初めから配列を使えばよいのですが、str1,str2,str3,...,str50は データベースから得る値なので、配列に入れる状態にはできません。 arr=[str1,str2,...,str50]とするのが最終手段ですが...
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
noname#223623
回答No.1
eval("print str#{i}") 補足として、50.times{|i|の場合'i'は0から始まるので、str1から始めるなら eval("print str#{i+1}") としないとエラーになります。
お礼
早速、eval関数について調べてみました。 こんな便利な関数があるのですね。 ご回答ありがとうございました。