sprintfが、引数にHashを取って、キーで参照できるようになった
まつもとさんのコミットr19641でsprintfがキー参照できるようになりました。
%{name}が書式なし版、%
puts sprintf("%<name>s is %<year>d years old, %{name}は%{year}歳です。" ,:name=>"xibbar",:year=>100)
結果は
% ruby19 /tmp/sprintf.rb xibbar is 100 years old, xibbarは100歳です。
となります。
%<>で指定する場合は、%
%
puts sprintf("%<salary>05d円,%<salary>3.2f$",:salary=>100)
を実行すると
% ruby19 /tmp/sprintf.rb 00100円,100.00$
と表示されます。
これはonigurumaの名前参照を使っているので、1.8には追加はされません。