Ruby勉強

インターネットの企画職な人がプログラミングを勉強するブログ

Ruby Refinements(2回目)

オープンクラス定義

class String
  def to_alphanumeric
    gsub(/[^\w\s]/,'')
  end
end

だが、副作用が発生しやすい

Refinementsは

module StringEnhance
  refine String do
    def to_alphanumeric
      gsub(/[^\w\s]/,'')
    end
  end
end

using StringEnhance
p "beautiful, 12, woman  @\#\{$%^&}$%^&".to_alphanumeric