Skip to content

Instantly share code, notes, and snippets.

@yugi386
Created December 21, 2011 01:05
Show Gist options
  • Select an option

  • Save yugi386/1504067 to your computer and use it in GitHub Desktop.

Select an option

Save yugi386/1504067 to your computer and use it in GitHub Desktop.
Exemplo do uso de máscaras - Example of use of masks
=begin
Esta mascara permite incluir um separador em um campo numa determinada
posicao e opcionalmente completar o seu tamanho à esquerda ou à direita.
Parâmetros:
1 - String a ser transformada pela mascara
2 - Caracter utilizado como separador
3 - posicao do caracter utilizado como separador. Se negativo começa a contagem do final da String para o Princípio
4 - Total de caracteres da String Resultante
5 - "D" ou "E" - Este parâmetro diz se os caracteres que complem o tamanho da string estão à direita ou à esquerda
6 - caracter de preenchimento par ao tamanho total
=end
def mposic(campo,separador,posicao,total,completar,caracter)
campo = campo.strip
if total != 0 && campo.length != total
tam = total - campo.length
for cont in (1..tam)
if completar.upcase == "D"
campo = campo + caracter
else
campo = caracter + campo
end
end
end
# inserindo separador:
posic = posicao
if posicao < 0
campo = campo.reverse
posicao = posicao * (-1)
end
tam = campo.length
tam = tam - 1
resultado = ""
for cont in (0..tam)
if posicao == (cont+1)
resultado = resultado + separador.to_s + campo[cont,1]
else
resultado = resultado + campo[cont,1]
end
end
if posic < 0
resultado = resultado.reverse.strip
end
return resultado
end
#-----------------------------------------------------------------------------
# MASCARA PARA TELEFONE:
def masc_telefone(tel)
if tel.length == 10
result = "(" + tel[0,2] + ")" + tel[2,4] + "-" + tel[6,4]
elsif tel.length == 13
result = "(" + tel[0,5] + ")" + tel[5,4] + "-" + tel[9,4]
elsif tel.length == 12
result = "(0" + tel[0,4] + ")" + tel[4,4] + "-" + tel[8,4]
end
return result
end
# end
#==============================================================================
puts mposic("123456789","/",-4,11,"D","0")
puts mposic("123","-",-3,5,"E","0")
puts mposic("ABACATE300","/",-4,0,"D","0")
puts masc_telefone("2133231413")
puts masc_telefone("0312133231413")
puts masc_telefone("413122224567")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment