class String

Public Instance Methods

blacklisted_cpf?() click to toggle source

Verifica se o CPF é faz parte da blacklist A blacklist consiste em CPFs inválidos como '111.111.111-11' e seus derivados

“11111111111”.blacklisted_cpf? => # true

# File lib/cpf_utils/string.rb, line 69
def blacklisted_cpf?
  wihout_mask = self.gsub(/\.?-?/,"",)
  first_number = wihout_mask[0]
  wihout_mask.count(first_number) == 11 ? true : false
end
cpf_valido?()

Apelido 'cpf_valido?' para o método valid_cpf?

Alias for: valid_cpf?
generate_cpf() click to toggle source

Para gerar um número de CPF a partir de um número candidato:

“456983948”.generate_cpf => # “45698394823”

# File lib/cpf_utils/string.rb, line 46
def generate_cpf
  if !!(self =~ /^[0-9]{9}+$/)
    final_cpf = self

    final_cpf << CpfUtils::Cpf.new(final_cpf[0..8]).first_digit.to_s
    final_cpf << CpfUtils::Cpf.new(final_cpf[0..9]).second_digit.to_s

    final_cpf
  end
end
Also aliased as: gerar_cpf
generate_cpf_formatted() click to toggle source

Gera um número de CPF formatado a partir de um número candidato:

“456983948”.generate_cpf_formatted => # “456.983.948-23”

# File lib/cpf_utils/string.rb, line 60
def generate_cpf_formatted
  generate_cpf.to_cpf_format
end
Also aliased as: gerar_cpf_formatado
gerar_cpf()

Apelido 'gerar_cpf' para o método generate_cpf

Alias for: generate_cpf
gerar_cpf_formatado()

Apelido 'gerar_cpf_formatado' para o método generate_cpf_formatted

mascara_de_cpf_valida?()

Apelido 'mascara_de_cpf_valida' para o método valid_cpf_mask

Alias for: valid_cpf_mask?
para_formato_cpf()

Apelido 'para_formato_cpf' para o método to_cpf_format

Alias for: to_cpf_format
to_cpf_format() click to toggle source

Para formatar um número válido de CPF:

“45698394823”.to_cpf_format => # “456.983.948-23”

# File lib/cpf_utils/string.rb, line 35
def to_cpf_format
   cleaned_cpf = self.gsub(/\.?-?/,"",)
  
  if cleaned_cpf.valid_cpf?
    "#{cleaned_cpf[0..2]}.#{cleaned_cpf[3..5]}.#{cleaned_cpf[6..8]}-#{cleaned_cpf[9..11]}"
  end
end
Also aliased as: para_formato_cpf
valid_cpf?() click to toggle source

Verifica se um CPF é válido:

“47238051923”.valid_cpf? => # true “472.380.519-23”.valid_cpf? => # true

# File lib/cpf_utils/string.rb, line 17
def valid_cpf?
  if valid_cpf_mask?
    original_cpf = self.gsub(/\.?-?/,"",)
    tested_cpf = original_cpf[0..8]

    tested_cpf << CpfUtils::Cpf.new(original_cpf[0..8]).first_digit.to_s
    tested_cpf << CpfUtils::Cpf.new(tested_cpf[0..9]).second_digit.to_s

    valid_cpf = (tested_cpf == original_cpf) ? true : false
    blacklisted_cpf = !self.blacklisted_cpf?

    (valid_cpf == blacklisted_cpf) ? true : false
  end
end
Also aliased as: cpf_valido?
valid_cpf_mask?() click to toggle source

Verifica se uma máscara de CPF é válida:

“456.983.948-23”.valid_cpf_mask? => # true “456.983..948-23”.valid_cpf_mask? => # false

# File lib/cpf_utils/string.rb, line 7
def valid_cpf_mask?
  without_mask = !!(self =~ /^[0-9]{11}+$/)
  with_mask = !!(self =~ /^[0-9]{3}\.[0-9]{3}\.[0-9]{3}-[0-9]{2}+$/)
  with_mask || without_mask
end
Also aliased as: mascara_de_cpf_valida?