Como pegar somente os números de uma String? – Show Delphi

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 pegar somente os números de uma String?

 

Função que recupera só os números contidos em uma string.

Em versões unicode é necessário declarar System.SysUtils.

Segue o código fonte da função:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
function GetStrNumber(const S: string): string;
var
  vText : PChar;
begin
  vText := PChar(S);
  Result := '';
 
  while (vText^ <> #0) do
  begin
    {$IFDEF UNICODE}
    if CharInSet(vText^, ['0'..'9']) then
    {$ELSE}
    if vText^ in ['0'..'9'] then
    {$ENDIF}
      Result := Result + vText^;
 
    Inc(vText);
  end;
end;

Exemplo de uso:

1
2
3
4
5
6
7
procedure TForm1.Button1Click(Sender: TObject);
begin
  // vai mostrar só os números que estavam na string.
  ShowMessage(GetStrNumber('g4dfg46dSsgGGS454S700DG%#$76dfsd'));
 
  ShowMessage(GetStrNumber('KsXlTo14PMnmQ6a'));
end;

Dúvidas ou sugestões deixe nos comentários do post.

Facebook Comments

Posts Relacionados

  • Administrador
  • 1.709 views
  • 0 comentários
  • 18 de abril de 2015

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Ir ao topo

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