DICAS

Visite a biblioteca de dicas da comunidade.

Saiba mais

ARTIGOS

Abordagens detalhadas sobre assuntos diversos.

Saiba mais

INICIANTES

Aprenda a programar de um modo simples e fácil.

Saiba mais

DOWNLOADS

Acesse os materiais exclusivos aos membros.

Saiba mais
voltar

PARA QUEM GOSTA DE DELPHI

Como aplicar uma máscara a uma String?

Fala galera da comunidade Show Delphi, tudo beleza?

Quantas vezes temos em uma string dados importantes como CPF, CNPJ, Telefones ou mesmo CEPs, mas temos somente os números e gostaríamos de exibir em um formato amigável para o usuário final, ou seja, aplicar uma máscara.

Felizmente o Delphi e o Lazaurus inclusive, nos proporcionam um modo muito fácil de resolver este problema.

Esta dica mostra como podemos aplicar uma mascara a uma
string de um modo muito fácil, esta função permite aplicar
qualquer mascara para uma string.

É necessário estar declarado MaskUtils na seção uses,
em versões unicode declare System.MaskUtils;

Para Lazarus ou Delphis mais antigos declare somente MaskUtils na seção uses

Função do Delphi / Lazarus: FormatMaskText(mascara, Texto)
Retorno: String

Exemplos de uso:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
procedure TForm1.Button1Click(Sender: TObject);
begin
  // Aplicando máscara do CPF
  ShowMessage(FormatMaskText('000\.000\.000\-00;0;', '51895752337'));
 
  // Aplicando máscara do CNPJ
  ShowMessage(FormatMaskText('00\.000\.000\/0000\-00;0;', '44732264000105'));
 
  // Aplicando máscara do CEP
  ShowMessage(FormatMaskText('00000\-000;0;', '99200000'));
 
  // Aplicando máscara dE TELEFONE
  ShowMessage(FormatMaskText('\(00\)000000009;0;', '11978563215'));
  ShowMessage(FormatMaskText('\(00\)000000009;0;', '5434491111'));
end;

Esta dica funciona inclusive par o Firemonkey!

Para facilita ainda mais o entendimento, vamos postar o código inteiro da unit de exemplo:

Aqui o exemplo é um Lazarus, mas para o Delphi é muito similar.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
unit Unit1;
 
{$mode objfpc}{$H+}
 
interface
 
uses
  Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls;
 
type
 
  { TForm1 }
 
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
 
  public
 
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.lfm}
 
uses
  MaskUtils;
 
{ TForm1 }
 
procedure TForm1.Button1Click(Sender: TObject);
begin
  // Aplicando máscara do CPF
  ShowMessage(FormatMaskText('000\.000\.000\-00;0;', '51895752337'));
 
  // Aplicando máscara do CNPJ
  ShowMessage(FormatMaskText('00\.000\.000\/0000\-00;0;', '44732264000105'));
 
  // Aplicando máscara do CEP
  ShowMessage(FormatMaskText('00000\-000;0;', '99200000'));
 
  // Aplicando máscara dE TELEFONE
  ShowMessage(FormatMaskText('\(00\)000000009;0;', '11978563215'));
  ShowMessage(FormatMaskText('\(00\)000000009;0;', '5434491111'));
end;
 
end.

Certo pessoal, acredito que tenha ficado bem esclarecido como utilizar a função. Espero que ajude a todos.

Dúvidas ou sugestões? Deixe o seu comentário!

Um abraço e até a próxima pessoal. Valeu!

Facebook Comments Box
  • Giovani Da Cruz
  • 32.280 views
  • 4 comentários
  • 30 de março de 2015

Está gostando do conteúdo? Considere pagar um cafezinho para nossa equipe!

4 respostas para “Como aplicar uma máscara a uma String?”

  1. Tiago Cardoso disse:

    Muito boa a dica!!

  2. Rodrigo José Teixeira disse:

    Gostaria de saber como ficaria pra TCP/IP
    se puder me mostrar, por favor
    e se tiver outro local para colocar essa ação além do click de um botão

    Eu gostaria de algo bem semelhante ao que é no windows, se possivel

  3. Soon disse:

    Vlw amigo, não sabia que essa função funcionava para Firemonkey

Deixe um comentário

Ir ao topo

© 2024 Infus Soluções em Tecnologia - Todos os Direitos Reservados