hola como puedo contar el numero de palabras repetidas o el numero de párrafos ??

Contar palabras repetidas
Comenzado por
daniel.rasta
, jun 28 2013 12:47
3 respuestas en este tema
#1
Escrito 28 junio 2013 - 12:47
#2
Escrito 29 junio 2013 - 07:34
A partir de Delphi XE existe la función SplitString en la unidad StrUtils la cual puedes utilizar para separar las palabras de una cadena y así poder contar si repiten, ejemplo:
Saludos.
delphi
var Palabras: TstringDynArray; Palabra: string; Cuenta: Integer; begin Cuenta := 0; Palabras := SplitString('Hola bienvenido a delphiaccess y bienvenido al club!', ' '); for Palabra in Palabras do begin if Palabra = 'bienvenido' then inc(Cuenta); end; end;
Saludos.
#3
Escrito 29 junio 2013 - 05:23
En delphis mas antiguos se puede usar un TStringGrind, le pones un separator:= ', ' (una coma y un espacio) y luego le metes el texto con MyStringGrid.Text:= MyListaDePalabras, y el texto se troceará y lo podras recorrer con algo como esto (ojo, lo escribo de memoria, no tengo delphi ahora):
Ah! Añado una forma sencilla de detectar duplicados al final usando indexof, ya que este te da la primera aparicion de la palabra, y si es menor que i, es que hay otra anterior igual.
Ah! Añado una forma sencilla de detectar duplicados al final usando indexof, ya que este te da la primera aparicion de la palabra, y si es menor que i, es que hay otra anterior igual.
delphi
MyStringList.Separator:= ' ,'; MyStringList.Text:= MyListaDePalabras; for i:= 0 to MyStringList.Count-1 do begin Palabra:= MyStringList[i]; if MyStringList.IndexOf(Palabra)<i then ShowMessage(Palabra+' está duplicada.'); end;
#4
Escrito 02 julio 2013 - 04:03
ok muchas gracias por su ayuda y tiempo.
saludos
saludos