Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Distingui MAYUSC. y minusc. en una busqueda?? (https://www.clubdelphi.com/foros/showthread.php?t=41801)

makis 26-03-2007 16:25:28

Distingui MAYUSC. y minusc. en una busqueda??
 
Ola este es mi primer post, a ver tengo esto

Código Delphi [-]
procedure TForm2.Image1Click(Sender: TObject);
var
Posicion : longint;
Cadena : string;

begin
        
        Cadena:= txtBox.Text;
        Posicion:= Pos(Cadena, Form1.Memo1.Text) -1;
        
        Form1.Memo1.SelStart:= Posicion;
        Form1.Memo1.SelLength:= Length(Cadena);
        Form1.Memo1.SetFocus;
        Close;

end;


El problema está ke si una palabra la pongo para buscar en mayusculas y en el texto a buscar esta en minuscula no lo selecciona. ¿Me podeis hechar un cable?

Saludos y Gracias

Onti 26-03-2007 16:44:32

Podrias utilizar la función Upcase para convertir a mayusculas

jhonny 26-03-2007 17:47:16

Ya que es tu primer mensaje voy a aclararte lo que a dicho Onti, La función Upcase te devuelve un Carácter en mayusculas, pero según entiendo necesitas buscar entre el Memo una palabra y por lo tanto necesitaras convertir ("Internamente") a mayusculas la palabra completa y para eso existe la función UpperCase pero si en ese texto a convertir esta por ejemplo la Ñ no funcionaria y para ese caso deberias usar AnsiUpperCase...
Porque este tipo me habla de convertir si lo que yo quiero es buscar?
R// Muy sencillo porque basado en la idea que Onti te a proporsionado lo que necesitas es que el programa busque jhonny donde dice JHONNY entonces para no matarnos la cabeza simplemente hacemos que ambos se conviertan a mayusculas "Internamente" (El usuario ni cuenta se dará del asunto)... Entonces la cosa quedaría así:
Código Delphi [-]
procedure TForm2.Image1Click(Sender: TObject);
var
  Posicion : longint;
  Cadena : string;
begin
  Cadena:= txtBox.Text;
  Posicion:= Pos(AnsiUpperCase(Cadena), AnsiUpperCase(Form1.Memo1.Text)) -1;//En esta linea se hace lo dicho anteriormente
  Form1.Memo1.SelStart:= Posicion;
  Form1.Memo1.SelLength:= Length(Cadena);
  Form1.Memo1.SetFocus;
  Close;
end;
Ahhh, y te doy una calurosa BIENVENIDA¡¡¡ ojala sigas por aquí ;).
P.D. Y recuerda usar las etiquetas delphi, voy a editar tu mensaje para que veas como se colocan.

makis 26-03-2007 21:17:06

Muchas gracias me sirvio la respuesta, es para un encriptador de texto sencillo una bobada ke estoy haciendo es mi primera aplicacion.

Saludos


La franja horaria es GMT +2. Ahora son las 02:18:25.

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