0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

rails再学習ロードAdvent Calendar 2020

Day 7

学び直し Rubyがミニツク Part3

Last updated at Posted at 2021-02-04

今日の教科書
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メソッドは全ての要素を削除する
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?