Sha256: 3e033e8210f8d7ce108e5a90d19cb85b78a16eb7fac7bb0cf1efe058945b84b7
Contents?: true
Size: 702 Bytes
Versions: 21
Compression:
Stored size: 702 Bytes
Contents
# encoding: utf-8 # module CharacterSubstituters # :nodoc:all # Substitutes Umlauts like # ä, ö, ü => ae, oe, ue. # (and more, see specs) # class WestEuropean def initialize @chars = ActiveSupport::Multibyte.proxy_class end def to_s self.class.name end def substitute text trans = @chars.new(text).normalize(:kd) # substitute special cases # trans.gsub!('ß', 'ss') # substitute umlauts (of A,O,U,a,o,u) # trans.gsub!(/([AOUaou])\314\210/u, '\1e') # get rid of ecutes, graves and … # trans.unpack('U*').select { |cp| cp < 0x0300 || cp > 0x035F }.pack('U*') end end end
Version data entries
21 entries across 21 versions & 1 rubygems