O exemplo a seguir nos mostra como remover pontos de um nome de arquivo, deixando é claro o da extensão:
procedure TForm1.Button1Click(Sender: TObject);
var
vl_a: integer;
vl_i: integer;
begin
//verifica indice do ultimo ponto
FOR vl_i:= Length(LabeledEdit1.Text) DOWNTO 1 DO
BEGIN
IF Copy(LabeledEdit1.Text, vl_i, 1) = '.' THEN
BEGIN
vl_a := vl_i;
Break;
END;
END;
//copia texto ignorando os pontos, exceto quando o ponto estiver no inidice encontrado
//anteriormente
FOR vl_i:= 1 TO Length(LabeledEdit1.Text) DO
BEGIN
IF ( Copy(LabeledEdit1.Text, vl_i, 1) <> '.' ) THEN
LabeledEdit2.Text := LabeledEdit2.Text + Copy(LabeledEdit1.Text, vl_i, 1)
ELSE IF ( vl_i = vl_a ) THEN
LabeledEdit2.Text := LabeledEdit2.Text + Copy(LabeledEdit1.Text, vl_i, 1)
END;
end;
Baixe o exemplo aqui.
procedure TForm1.Button1Click(Sender: TObject);
var
vl_a: integer;
vl_i: integer;
begin
//verifica indice do ultimo ponto
FOR vl_i:= Length(LabeledEdit1.Text) DOWNTO 1 DO
BEGIN
IF Copy(LabeledEdit1.Text, vl_i, 1) = '.' THEN
BEGIN
vl_a := vl_i;
Break;
END;
END;
//copia texto ignorando os pontos, exceto quando o ponto estiver no inidice encontrado
//anteriormente
FOR vl_i:= 1 TO Length(LabeledEdit1.Text) DO
BEGIN
IF ( Copy(LabeledEdit1.Text, vl_i, 1) <> '.' ) THEN
LabeledEdit2.Text := LabeledEdit2.Text + Copy(LabeledEdit1.Text, vl_i, 1)
ELSE IF ( vl_i = vl_a ) THEN
LabeledEdit2.Text := LabeledEdit2.Text + Copy(LabeledEdit1.Text, vl_i, 1)
END;
end;
Baixe o exemplo aqui.
Comentários
Postar um comentário
Obrigado por Participar do programero, fique a vontade para agradecer, retificar, perguntar ou sugerir.