From: Kazuhiro NISHIYAMA Date: 2005-06-26T03:18:41+09:00 Subject: [ruby-dev:26384] Range#eachの初回でbeginを変更した時の挙動 西山和広です。 Range#eachの初回のみでbeginを変更した時に、 * ループ回数を変更することができる * 変更した後にブロックに渡された値も変わっている ということがおきるのは意図的でしょうか? % ruby18 -ve 's="1";r=s.."5";r.each{|i|p i; s.replace("3");p i}' ruby 1.8.3 (2005-06-25) [i686-linux] "1" "3" "4" "4" "5" "5" % ruby18 -ve 's="1";r=s.."5";r.each{|i|p i; s.replace("3") if i=="2";p i}' ruby 1.8.3 (2005-06-25) [i686-linux] "1" "1" "2" "2" "3" "3" "4" "4" "5" "5" % -- |ZnZ(ゼット エヌ ゼット) |西山和広(Kazuhiro NISHIYAMA)