Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Buscar en un memo (https://www.clubdelphi.com/foros/showthread.php?t=55691)

Vlady 24-04-2008 01:31:36

Buscar en un memo
 
he buscado en el foro y no encuentro la solución por eso este hilo, necesito si es q existe una función q busque una cadena de caracteres determinada en un memo, no se si esta función existe o se debe hacer en un ciclo for linea por linea

eduarcol 24-04-2008 01:35:15

el memo a fin de cuentas es un texto, podrias hacer algo como:

Código Delphi [-]
if Pos('Lo que busco', Memo1.Text) > 0 then
   ShowMessage('Pues mira que si esta');

xEsk 24-04-2008 01:39:06

Puedes usar la funcion Pos.

Ejemplo:
Código Delphi [-]
if pos('a buscar', memo1.text) > -1 then
  // encontrada cadena de texto...
Luego puedes mejorarlo, usando la funcion PosEx.

Pero creo recordar, que el TMemo o TRichEdit tiene una funcion para buscar, pero no te lo puedo asegurar porque no tengo el Delphi a mano :S

Saludos

Edito: Se me adelanto eduarcol, xD

jusnjosesch 15-08-2012 22:32:40

Prueba con esto busca y busca siguiente;


Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
 var
    Posicion:longint;
    Cadena:string;
    nCont,band,lpos:integer;
begin
Lpos := SendMessage(memo1.Handle,EM_LINEFROMCHAR,Memo1.SelStart,0);
if lpos > 0 then  lpos:= lpos + 1;
  Cadena:=edit1.Text;
   band:=0;
  For nCont:=Lpos to memo1.Lines.Count -1  do
    begin
     if pos((cadena),(memo1.lines[nCont])) > 0 then
     begin
      Posicion:=pos((cadena),(Memo1.lines[nCont]))-1;
      memo1.SelStart:= posicion+Memo1.Perform(EM_LINEINDEX, ncont, 0);
      memo1.SelLength:=Length(cadena);
      memo1.SetFocus;
      band:= 1;
      break;
    end;
  end;
if band=0 then showmessage('no se encuenta '+cadena);

end;

suerte


La franja horaria es GMT +2. Ahora son las 12:51:46.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi