GARANTIR DESCONTO

Fórum Tratamento string #202720

23/12/2003

0

preciso de uma função para tirar ´.´ e ´/´

obrigado

eduardo


Edebom

Edebom

Responder

Posts

23/12/2003

Beppe

Modo simples:

Texto := StringReplace(Texto, ´.´, ´´, [rfReplaceAll]);
Texto := StringReplace(Texto, ´/´, ´´, [rfReplaceAll]);



Responder

Gostei + 0

23/12/2003

Deus

Bem, eu criei uma função que não se limita a remover apenas ´\´ e ´.´, mas sim qualquer coisa que você quiser remover na hora. Inicialmente, declare o Tipo [i:11dabacc21]´TChars´[/i:11dabacc21] no form, antes da declaração do Form, da seguinte forma:

  TChars = set of char;
  TForm1 = class(TForm)


Lembrando que você [b:11dabacc21]não[/b:11dabacc21] precisa declarar o TForm, é só pra saber em que posição declarar o TChars. :) Em seguida, crie a seguinte função:

function TrataString(stOriginal: String; scRemove: TChars): String;
var
  i: Integer;
begin
  i := 1;
  while not (i > Length(stOriginal)) do
    if (stOriginal[i] in scRemove) then
      Delete(stOriginal, i, 1)
    else
      inc(i);

  Result := storiginal;
end;


Agora, quando quiser usá-la, é só fazer:

varString := TrataString(´\aqui\nao\tem\barra.nem.ponto´, [´\´, ´.´])


Onde o segundo parâmetro é um conjunto de todos os caracteres que você quer removidos. Se você quisesse remover todos os ´*´, ´&´ e ´´, por exemplo, o parâmetro seria [´*´, ´&´, ´´]. Ok?

Abraços, dEUS. :)


Responder

Gostei + 0

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

Aceitar