Fórum Function com erro #374983
16/09/2009
0
function TForm1.Copy(Frase,Inicio,Fim:String):String;
{ função criada por Marcus Vitoratti }
var
iAux,kAux:Integer;
begin
Result:=´´;
if (Pos(Fim,Frase) <> 0) and (Pos(Inicio,Frase)<>0) then
begin
iAux:=Pos(Inicio,Frase)+length(Inicio);
kAux:=Pos(Fim,Frase);
Result:=Copy(Frase,iAux,kAux-iAux);
end;
end;Pessoal o que há de errado com essa função? Quando eu compilo o projeto da o seguinte erro: [color=brown:3eb2b5cd60][Error] Unit1.pas(73): Incompatible types: ´String´ and ´Integer´[/color:3eb2b5cd60]
[]´s Ivonei
Ivonei
Curtir tópico
+ 0Posts
16/09/2009
Facc
nos parametros passou strings, e o POS (se não me engano) requer integer. Faça a conversão antes de usar.
Gostei + 0
16/09/2009
Pestana_
Gostei + 0
16/09/2009
Pestana_
function TForm1.Copiar(Frase,Inicio,Fim:String):String;
{ função criada por Marcus Vitoratti }
var
iAux,kAux:Integer;
begin
Result:=´´;
if (Pos(Fim,Frase) <> 0) and (Pos(Inicio,Frase)<>0) then
begin
iAux:=Pos(Inicio,Frase)+length(Inicio);
kAux:=Pos(Fim,Frase);
Result:=Copy(Frase,iAux,kAux-iAux);
end;
end;Gostei + 0
16/09/2009
Ivonei
Valeu Facc.
Gostei + 0
16/09/2009
Pestana_
você poderia postar a solução?
Gostei + 0
17/09/2009
Ivonei
procedure TForm1.Button5Click(Sender: TObject); var I: Integer; Texto :String; Inicio, Fim :Integer; begin Texto:= Memo1.Text; Inicio := pos(´texoinicial´,Texto)+30; Fim := pos(´textofinal´,Texto); memo2.text:=copy(Texto,Inicio,Fim-Inicio); end;
[]´s Ivonei
Gostei + 0
17/09/2009
Pestana_
O que importa é que você resolveu o problema e se precisar de mais alguma coisa é só postar que ajudarei na medida do possível!
boa sorte!
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)