2006-11-22から1日間の記事一覧

.[]で呼び出す

[ ]もメソッドなので、レシーバ.[](引数)のように書けます。 p 1024.[](10) #=> 1

Integer#[]

Integer#[]を使うと、ビットパターンが得られます。 10.downto(0) do |k| print 1024[k] end #=> 10000000000きのう定義した(機能定義じゃなくて、昨日定義ね)Method#whereを使って、[]がどこで定義されているかを調べてみましょう。 class Method def whe…

正規表現にマッチした文字列を得る変数$&

小さなプログラムで正規表現の練習をします。 参照:『新版Perl言語プログラミングレッスン入門編』(p.191) while s = gets if /ca.s/ =~ s puts "=> #{$&} --- Matched!" else puts "=> Not matched..." end end実行例です。 cats => cats --- Matched! CAT…

擬似変数__FILE__

擬似変数__FILE__は現在のソースファイル名です。 「__FILE__と$0との比較」を「このスクリプトが直接実行されたかどうか」の判断に使うというイディオムがあります。以下に例を示します。 class Greeting def initialize(name="Rubyco") @name = name end d…