[#49148] Ruby 1.9で、バイト長の部分文字列を作りたくて悩んでます — Daisuke Yokotsuka <yokots_d@...3-net.ne.jp>

はじめまして。横塚と申します。

16 messages 2013/01/29

[ruby-list:49134] Re: まったくの初心者です

From: rubikitch@...
Date: 2013-01-15 12:46:28 UTC
List: ruby-list #49134
From: "mizumachi" <memos@memos.jp>
Subject: [ruby-list:49132] まったくの初心者です
Date: Tue, 15 Jan 2013 21:38:48 +0900

るびきちです。

> 例題コードがありました。
> 
> word_is_there = { }
> word.each { |word| word_is_there[ word ] = true }
> 
> 1行目の{ } は[ ] の間違いではないのでしょうか。ネットや何冊かの手持ち
> の本をひもといても分からず、質問させていただきます。

間違ってはいません。

[ ] は空配列であり、 { } は空ハッシュです。

むしろ word.each が間違いで words.each のはずです。

でもwordsが定義されていないので、この2行だけだと実行できません。

wordsを設定して初めて実行できます。

ハッシュword_is_thereは、単語の有無を調べる目的で、
words各々においてtrueを設定しています。

結果、以下のようになります。

====
words = ["ruby", "perl", "python"]
word_is_there = { }
words.each { |word| word_is_there[ word ] = true }
word_is_there  # => {"ruby"=>true, "perl"=>true, "python"=>true}
====

--
rubikitch
Blog: http://d.hatena.ne.jp/rubikitch/
Site: http://www.rubyist.net/~rubikitch/
Twit: http://twitter.com/rubikitch/
Emacsネット塾『Emacsの鬼るびきちのココだけの話』 http://tinyurl.com/76bnprd
『Emacs Lispテクニックバイブル』 http://tinyurl.com/6r6khos
『Emacsテクニックバイブル』 http://tinyurl.com/24yghag
『Ruby逆引きハンドブック』  http://tinyurl.com/pbfqwn

In This Thread