Como fazer um Copy ao Contrário? – 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 fazer um Copy ao Contrário?

 

Muitas vezes me deparei com a necessidade copiar parte de uma string,
mas, do fim para o inicio, ou se preferir, de trás para a frente.

Para resolver este problema criei uma função simples, que funciona
de forma muito semelhante ao Copy tradicional, só porém, copiando
do fim para o início.

Veja o código fonte:

1
2
3
4
5
6
7
8
9
uses
  System.StrUtils;
 
function CopyReverse(S: String; Index, Count : Integer) : String;
begin
  Result := ReverseString(S);
  Result := Copy(Result, Index, Count);
  Result := ReverseString(Result);
end;

Para exemplificar o seu uso, veja o código a seguir:

1
2
3
4
5
6
procedure TForm1.Button1Click(Sender: TObject);
begin
  { Quero os 6 últimos caracteres, ou seja, a aprtir do último,
  quero os 6 caracteres do fim. }
  ShowMessage( CopyReverse('Show Delphi', 1, 6) );
end;

Tempos a string ‘Show Delphi’, e neste exemplo, quero copiar a
partir do último, seis caracteres, no sentido da direita para a esquerda.

O resultado será ‘Delphi’.

Espero que a dica seja útil a todos!

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

Facebook Comments

Posts Relacionados

  • Giovani Da Cruz
  • 1.462 views
  • 0 comentários
  • 16 de novembro 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