Fórum Deletando espaços em branco e sinal de quot;-quot; numa st #205800

12/01/2004

0

Alguém conhece uma forma de apagar um espaço em branco ou um sinal de ´-´ numa string. e o seguinte, tenho um campo numa tabela onde cadastro placas de caminhôes, só que agora preciso criar um txt com os dados desta tabela, mas no campo placa eu preciso coloco-lo sem espaço, ou sem sinal de ´-´, ex. ´GPR-0000´ ou ´GPR 0000´, tenho que coloca-lo assim no txt ´GPR0000´.
se alguém souber como faço isso eu agradeço, valeu.


Eduardo_lcouto

Eduardo_lcouto

Responder

Posts

12/01/2004

Marconi

Outra maneira é esta

while Ansipos(´ -.,/|\;:!¬$#@´ , MinhaString) >0 do
delete(MinhaString,Ansipos(´ -.,/||;:!¬$@´ , MinhaString),1);

Na constante => ´ -.,/|\;:!¬$@´ voce coloca todos os caracteres indesejáveis (inclusive espaço em branco).
Enquanto encontrar qualquer um deles dentro da String eles serão apagados.

Marconi


Responder

Gostei + 0

12/01/2004

Marconi

:oops: Corrigindo a linha 2

delete(MinhaString,Ansipos(´ -.,/|\;:!¬$#@´ , MinhaString),1);

Marconi


Responder

Gostei + 0

12/01/2004

Eduardo_lcouto

utilize a função StringReplace. Placa := StringReplace( Placa,´-´,´´,[rfReplaceAll] );





Está função Funciona bem, mas esqueci de mencionar e que pego as informações de um determinado periodo, quero dizer, por dia, e no decorrer do dia, os operadores do sistema, alguns lançam do hifém e outros colocam espaço em branco, e na hora de gerar o txt eu quero não importa se a placa de hifem ou não, eu queria colocar ela como padrão ´GGG0000´, porque este arquivo para um site de uma seguradora, e o site não aceita separação de hifém nem espaço.
Obrigado pela ajuda, mas a função não adianta neste caso, se você tiver outra saída. Valeu


Responder

Gostei + 0

12/01/2004

Eduardo_lcouto

Valeu Marconi, Valeu Emerson.NE, obrigado pela ajuda.


obs: Utilizei as duas funções.


Responder

Gostei + 0

22/01/2004

Marconi

Caros amigos

Estou recolocando a função só para não deixa-la incompleta caso alguem chegue até aqui por pesquisa.


Function TForm1.LimpaString(MinhaString:String);
var i:word; limpar:string;
begin
limpar:=´ -.,/|\;:!¬$#@´;
for i:= o to length(limpar)-1 do begin
while AnsiPos(limpar[i],MinhaString)>0
do delete(MinhaString,AnsiPos(limpar[i],MinhaString),1);
end;
result := MinhaString;
end;

A variavel Limpar pode ser uma contante, ou ainda parametro de entrada.

Marconi


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar