Ver Mensaje Individual
  #9  
Antiguo 11-11-2008
vcs vcs is offline
Registrado
 
Registrado: nov 2008
Posts: 9
Reputación: 0
vcs Va por buen camino
Ok, ya me queda mas claro,

al final he montado un codigo que hace lo que quiero aunque se complica demasiado

Código:
procedure TFXY.Button5Click(Sender: TObject);
var
  cadena1:string;
  cadena2:string;
  cadena3:string;
  siguiente:string;
  posicion:integer;
  posicion1:integer;
  posicion2:integer;
  chivato:integer;
  chivato2:integer;
  a: Integer;
  b: Integer;
  label
  kk;
begin
 chivato:=0;
 chivato2:=0;
  cadena1:='ENTITIES';
  posicion:=pos(cadena1,mtexto.Text);
  a:=posicion;
  while chivato=0 do
  begin
  kk:
   a:=a+1;
    cadena2:=mtexto.Text[a+7];
    if (cadena2=' ')or
        (cadena2=#10) or
        (cadena2=#13) or
        (Cadena2=#0) then
        BEGIN
        b:=a+1;
        siguiente:=mtexto.text[b+7];
    if (siguiente=' ')or
       (siguiente=#10) or
       (siguiente=#13) or
       (siguiente=#0) then
       goto kk
       else
       begin
        posicion1:=a+7;
        chivato:=1;
       end;
        END;
   end;
   while chivato2=0 do
    begin
   a:=a+1;
    cadena2:=mtexto.Text[a+7];
    if (cadena2=' ')or
        (cadena2=#10) or
        (cadena2=#13) or
        (Cadena2=#0) then
        BEGIN
        posicion2:=a+7;
        chivato2:=1;
        END;
   end;
  mtexto.SelStart:=posicion1;
  mtexto.SelLength:=posicion2-posicion1;
  Mtexto.SetFocus;
  cadena3:=mtexto.SelText;
  memo1.Text:=cadena3;
Para aprender me ha venido GENIAL pero esta claro que si tubiera que hacer un tecto de configuraciones lo mas sencillo desde luego seria trabajar por lineas y usar IndexOf que te arregla todo el código, muchas gracias por la ayuda.
Responder Con Cita