Ruby Tips!

RubyのTipsを紹介します

Rubyのリテラルについて

数値

数字を並べると数値となる。

1234
-1234

数値にはアンダーバーを含めることができる。

1_000_000

接頭詞を付けると10進数以外の数値も表記できる。

0b1010
0o7070
0d9090
0xF0F0

小数点をつけると数値は小数となる。

0.1

小数は仮数部e指数部と表記する方法もある。

2e-1

シンボル

:ではじまる英数字はシンボルとなる。

:foo

空白を含むシンボルは以下のように書ける。

:"foo bar"
%s(foo bar)

文字列

''""で囲った文字は文字列となる。

'foo'
"bar"

%q%Qを使う方法もある。

%q{foo}
%q(bar)

ヒアドキュメントを使えば複数行の文字列を簡単に書ける。

str = <<STR
foo
bar
buz
STR

正規表現

/または%r正規表現が書ける。

/foo/
%r(bar)

配列

[]で配列が書ける。

[1, 2, 3]

また文字列の配列は%wまたは%Wで書ける。

%w(a b c)
%W(d e f)

ハッシュ

{}でハッシュが書ける。中には=>でキーと値の対を書く。

{:a => 1, :b => 2, :c => 3}

Ruby 1.8では=>の代わりに,が使える。

{:a, 1, :b, 2, :c, 3}

Ruby 1.9では:でシンボルがキーのハッシュを簡単に表現できる。

{a:1, b:2, c:3}

コマンド出力

バッククオートで囲った文字はコマンドとして実行される。

`echo foo`

%xを使う方法もある。

%x{echo foo}

Proc

Ruby 1.9ではlambda->で書くことができる。

proc = ->(x, y){ x + y }
p proc.call(1, 2) #=> 3