わたなべです.

Yukihiro Matsumoto <matz / netlab.co.jp> writes:

:こういうのがお勧めです.
:
:  class String
:    def expandtabs(tabsize=8)
:      ...
:    end
:  end

perl のぱくりだけど, while と gsub! の iterator を組み合わせ
た場合どう書くのがいいのかな?

  class String
    def expandtabs(tabsize=8)
      me = self.dup
      while me.gsub!(/(^|\n)([^\t\n]*)(\t+)/) {
          $1 + $2 + " " * (tabsize * $3.size - $2.size % tabsize)
        }
      end
      me
    end
  end

-- 
わたなべひろふみ