def f x
p x
x.each do |y|
y.each do |z|
f z
end
end
end
f '0'
原因は String の each が1文字ずつ返すもんだと勘違いをしていたこと.
リファレンスマニュアルを読んで勉強勉強.
http://www.ruby-lang.org/ja/man/index.cgi?cmd=view;name=String#each より
each([rs]) {|line| ... }
each_line([rs]) {|line| ... }
文字列中の各行に対して繰り返します。行の区切りは rs に指定した文字列で、そのデフォルトは変数 $/ の値です。各 line には区切りの文字列も含みます。
rs に nil を指定すると行区切りなしとみなします。空文字列 "" を指定すると連続する改行を行の区切りとみなします (パラグラフモード)。
self を返します。
0 件のコメント:
コメントを投稿