Delphi - Comparando caracteres

 
Vista:

Comparando caracteres

Publicado por elnovato (22 intervenciones) el 16/05/2005 20:55:24
Hola amigos , tengo una duda, por ejemplo tengo un edit en el cual se entra una frase "el loko loko" por ejemplo..... y otro edit para buscar una palabra especifica que fue entrada en el Edit de la frase y que me diga cuantas veces se repite

Como lo hago

la esencia es ir comparando lo que hay en un edit y lo que hay en otro
y que mr diga cuantas veces se repite

saludos a todos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Comparando caracteres

Publicado por Dr Juzam (1 intervención) el 16/05/2005 21:06:34
La función Pos devuelve un valor entero diciendo la primera aparición de una subcadena en una cadena. Así, si vemos que el resultado de la función es >0 entonces hay una aparición de dicha cadena. El siguiente procedimiento hace una cuenta de palabras:

function ContarPalabras (sub,cad : string; casesensitive : boolean) : integer;
begin
if casesensitive=false then
begin
sub:=uppercase(sub);
cad:=uppercase(cad);
end;
result:=0;
while pos(sub,cad)>0 do
begin
result:=result+1;
delete(cad,pos(sub,cad),length(sub));
end;
end;

Sub es la subcadena que queremos contar. Cad es la cadena en la cual buscamos. CaseSensitive dice si queremos que se diferencias mayúsculas y minúsculas. Cada vez que hacemos una busqueda, eliminamos ese trozo de texto (para no volver a contarlo de nuevo). Un ejemplo de llamada de la función:

BuscarEn: Edit1.Text; //Cadena en la que buscar
Palabra: Edit2.Text; //Subcadena
ContarPalabras (Palabra, BuscarEn, true);
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar