今日の教科書
Rubyがミニツク便利なオブジェクト
#便利なオブジェクト
##メモ
- 式展開は「””」の中でできる。
- #{ }という記号を使う
- Rubyでは「//」で囲まれた文字列が正規表現オブジェクトになる
- パターンがあれば位置を返し、なければnilを返す
- パターンと文字列が合うか調べることをマッチングと呼ぶ
- =~演算子を使うことでおこなえる
- 複数の文字をパターンにした時は最初の文字の位置を返す
- 記号を文字として認識させるには、記号の前に「\」を付ける
- if文の条件にも使える
str = "abcde"
if /a/ =~ str
puts("パターンにマッチした")
end
変数 = [要素1, 要素2, 要素3]
ary = [1, 2, 3]
p ary[0] #=> 1
- Rubyの配列は、オブジェクトを要素として並べたもの
- 変数名の後に付ける[]はメソッド。ary0は
ary.[](0)
というメソッド呼び出しと同義であり、0は[]メソッドの引数 - 配列オブジェクトの各要素に割り当てられた番号をインデックスという
- lengthメソッドで要素数を返す
- eachメソッドはオブジェクトの集まりから各要素を取り出して操作する
- ハッシュオブジェクトでeachメソッドを呼び出すと、キーと値の両方が表示される
- 配列オブジェクト同士の減算(-)は、左から右の要素を取り除いた内容の新しい配列オブジェクトを返す
- 元の内容を変更しないメソッドは非破壊的なメソッド、逆に元の内容を変更するメソッドは破壊的なメソッドという
オブジェクト.each do |変数|
繰り返したい処理
end
- doからendまでをブロックという
- ハッシュは配列と似たようなデータの集まり
- ハッシュではキーを使って値を取り出す、配列は要素をインデックスで取り出していた
- ハッシュオブジェクトは{}を使う
- 配列と同じく[]メソッドを使って値を取り出す
- キーを指定して値を取り出す
- Hash.new でもハッシュオブジェクトが作成できる
- キーと値のペアで指定しないとエラーが発生する
- ハッシュオブジェクトの[]の参照演算子と[]=の代入演算子は混同しやすいので注意
- 文字列のキーとシンボルのキー、両者はオブジェクトとして全く別のもの。別々に出力される
変数 = {キー => 値}
hash = {"key" => 23}
p hash["key"] #=> 23
hash = {:foo => 23}
p hash[:foo] #=> 23
hash[:foo] = 42
p hash[:foo] #=> 42
- 「:」が文頭に来るのはシンボルと言いキーの指定に使える
- 「,」でハッシュオブジェクトを区切ることがでる
hash = {:ary => ["foo", "bar"]}
p hash[:ary][0] #=> "foo"
hash = {:hash => {:foo => 23, :bar => 42}}
p hash[:hash][:foo] #=> 23
- シンボルで指定したハッシュオブジェクトのキーにインデックスを指定して値を取り出す
- ハッシュオブジェクトの要素としてハッシュオブジェクトを入れることもできる
- deleteメソッドは引数にキーを指定すると、その要素を削除する
- clearメソッドは全ての要素を削除する