From: matz@... (Yukihiro Matsumoto) Date: 1997-11-25T17:03:17+09:00 Subject: [ruby-list:5426] Re: 配列への追加について まつもと ゆきひろです In message "[ruby-list:5425] Re: 配列への追加について" on 97/11/25, WATANABE Hirofumi writes: |わたなべです. |:a=[1,2,3];"#{*x}"でなにに展開するんでしょ? | |"1, 2, 3" です. なるほど,もっとも現在#{}の展開はto_sを使っていて配列のto_s は要素を空白をはさまずに展開する(この場合"123")ですので,ちょっ と挙動を考えないといけませんね. 更に現状ではRubyのトップレベルに「*式」という構文は許しませ んから,あちこち直す必要もありますね. |んで |a=["a", 1, "b", 2] だったら "\"a\", 1, \"b\", 2" になれば |eval "hash = {#{*a}}" |というのもありかな, なんて思って. なるほど.でも面倒な事をしなくても a=["a", 1, "b", 2] eval "hash={#{a.inspect[1..-2]}}" でも実現できますね.いや,文字列が長くなりすぎるとまずいのか. まつもと ゆきひろ /:|)