class Identificamex::Nombre::RazonSocial
Public Class Methods
new(razon_social)
click to toggle source
# File lib/identificamex/nombre/razon_social.rb, line 7 def initialize(razon_social) @razon_social = normalizar(razon_social) end
Public Instance Methods
siglas()
click to toggle source
# File lib/identificamex/nombre/razon_social.rb, line 11 def siglas tres_letras_de_razon_social end
to_s()
click to toggle source
# File lib/identificamex/nombre/razon_social.rb, line 15 def to_s @razon_social end
Private Instance Methods
abreviaturas()
click to toggle source
# File lib/identificamex/nombre/razon_social.rb, line 63 def abreviaturas [ /COMPAÑIA/, /CIA/, /\ASOCIEDAD/, /\ASOC/, / S EN N ?C\z/, / S EN C\z/, / S DE R ?L\z/, / S EN C POR A\z/, / S ?A\z/, / S ?A DE C ?V\z/, / S ?N ?C\z/, / S ?C\z/, / A ?C\z/, / A EN P\z/, / S ?C ?L\z/, / S ?C DE R ?L DE C ?V\z/, / S ?C ?S\z/ ] end
eliminar_abreviaturas(str)
click to toggle source
# File lib/identificamex/nombre/razon_social.rb, line 55 def eliminar_abreviaturas(str) abreviaturas.inject(str) { |str, a| str.gsub(a, '') }.strip end
normalizar(str)
click to toggle source
# File lib/identificamex/nombre/razon_social.rb, line 21 def normalizar(str) eliminar_abreviaturas(mayusculas(str)) end
palabras_a_considerar()
click to toggle source
# File lib/identificamex/nombre/razon_social.rb, line 33 def palabras_a_considerar @palabras_a_considerar ||= palabras_razon_social[0, 3] end
palabras_especiales()
click to toggle source
# File lib/identificamex/nombre/razon_social.rb, line 59 def palabras_especiales %w[DE Y DEL LOS LAS LA EL PARA EN] end
siglas_dos_palabras()
click to toggle source
# File lib/identificamex/nombre/razon_social.rb, line 41 def siglas_dos_palabras palabras_a_considerar[0][0] + palabras_a_considerar[1][0, 2] end
siglas_palabra_unica()
click to toggle source
# File lib/identificamex/nombre/razon_social.rb, line 45 def siglas_palabra_unica letras = palabras_a_considerar.first[0, 3] letras += "X" * (3 - letras.length) if letras.length < 3 letras end
siglas_tres_palabras()
click to toggle source
# File lib/identificamex/nombre/razon_social.rb, line 37 def siglas_tres_palabras palabras_a_considerar.map{|l| l[0]}.join end