すみません>>72は投稿ミスです。
ブロックの処理を途中で終わらせてしまうことってできないでしょうか?
下の例で、 next if i > '6' などとせずに、なおかつ i == '7' の時にブロックの処理を終了させて
str == "024681012" となるようにしたいんです。
breakに何か良い引数を与えられればできそうなんですが……。
str = "0123456789"
str.gsub!(/\d/){|i|
 ???? if i == '7'
 i*2
}