Class: String

Inherits:
Object
  • Object
show all
Defined in:
lib/cookler/utils.rb

Overview

Patch to remove the accents from the string. (Uses String::ACCENTS_MAPPING as the source map).

Constant Summary collapse

ACCENTS_MAPPING =
{
  'E' => [200,201,202,203],
  'e' => [232,233,234,235],
  'A' => [192,193,194,195,196,197],
  'a' => [224,225,226,227,228,229,230],
  'C' => [199],
  'c' => [231],
  'O' => [210,211,212,213,214,216],
  'o' => [242,243,244,245,246,248],
  'I' => [204,205,206,207],
  'i' => [236,237,238,239],
  'U' => [217,218,219,220],
  'u' => [249,250,251,252],
  'N' => [209],
  'n' => [241],
  'Y' => [221],
  'y' => [253,255],
  'AE' => [306],
  'ae' => [346],
  'OE' => [188],
  'oe' => [189]
}

Instance Method Summary collapse

Instance Method Details

#removeaccentsObject



36
37
38
39
40
41
42
43
44
45
# File 'lib/cookler/utils.rb', line 36

def removeaccents    
  str = String.new(self)
  String::ACCENTS_MAPPING.each {|letter,accents|
    packed = accents.pack('U*')
    rxp = Regexp.new("[#{packed}]", nil)
    str.gsub!(rxp, letter)
  }
  
  str
end