aの日記: File.join
File.join でセパレータ'/'でくっつけてくれる。
File.join でセパレータ'/'でくっつけてくれる。
某リファレンスより:
【組込み変数 $~, $! 等】
なくなることはないと思いますが、基本的に使わないのが最近のスタイルです。
(少なくとも増えることはないそうです)
これら特殊変数を使わないようにするために追加されたメソッドや文法が存在します。
(Regexp.last_match, Process.waitpid2, rescue => var など)
例えばこんな感じかな。
begin
…
rescue => e
puts e.inspect
end
inspect(Ruby) は toString(Java)
ナニゲに、整数の割り算をしてMath.log10を使ってはまった。
to_f : 浮動小数点への変換
結構驚いちゃったんだけど。
foo.rb の中では bar.rb を require してないのに Bar クラスが使用できるんだね。
-----foo.rb-----
class Foo
def foo
Bar.new.bar
end
end
----------------
-----bar.rb-----
class Bar
def bar
print "bar\n"
end
end
----------------
-----test.rb-----
require 'foo.rb'
require 'bar.rb'
ruby -d hoge.rb
とするとデバッグモードで起動する($DEBUG=true)。
Array#pack
| 配列の内容をtemplateで指定された文字列にしたがって,バイナリとしてパックした文字列を返します.
| テンプレートは型指定文字列とその長さ(省略時は1)を並べたものです.
| 長さとして*が指定された時は「残りのデータ全て」の長さを表します.
| 型指定文字は以下の通りです.
join は Array のメソッド。
何度みても忘れるんだけど~(泣)。
Array#join
| 配列の要素をsepを間に挟んで連結した文字列を返します.
| sepが省略された場合には変数$, の値が使われます.
$, … print の引数区切り、Array#join のデフォルトの区切り(で男フォルトは nil)
hash_table = {"abc" => 1, "def" => 2, "ghi" => 3}
for k, v in hash_table
print "key=", k, ",value=", v, "\n"
end
実行結果:
key=abc,value=1
key=def,value=2
key=ghi,value=3
表現のグループ化(後方参照なし)。
つまり、後で \1 や \2 とかして参照しないけどグルーピングしたい時に利用する。
犯人はmoriwaka -- Anonymous Coward