doppelte wörter rausfiltern

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von Halloweenracer, 26. Dezember 2005 .

  1. 26. Dezember 2005
    huhu,

    ich hab in meinem tool ein memofeld und ein botton.

    in das memofeld kann ich wörter reinkopieren und dann per bottonklick in einer txt datei speichern. das ist auch der sinn des tools.

    das is ja alles bis hier kein problem.

    quellcode is hier:

    procedure TForm1.Button1Click(Sender: TObject);
    begin
    Memo1.Lines.SaveToFile('C:\lalalalala.txt');
    end;

    end.


    nun sollen aber, wenn die datei gespeichert ist, alle doppelten wörter aus dem memofeld rausgeschnitten sein.... hat da jmd ne idee, wie ich das in die procedure einbinden kann?

    danke schonmal

    mfg racer
     
  2. 26. Dezember 2005
    ka obs funktioniert, ich hab auch ma sowas ausprobiert, naja kannses ja testen:
    Code:
    procedure antidoppelte(theMemo: TMemo);
    var temp: TStringDynArray;
     i2: integer;
    begin
     for i:=0 to theMemo.Lines.Count -1 do
     begin
     temp :=Explode(' ', theMemo.Lines.Strings[i]);
     theMemo.Lines.Strings[i] :='';
     for i2:=0 to length(temp) -1 do if (i2 =length(temp) -1) or (temp[i2] <> temp[i2+1]) then theMemo.Lines.Strings[i] :=theMemo.Lines.Strings[i]+ ' ' +temp[i];
     end;
    end;
    
    also das is halt der grundegedanke dass er jedes wort miteinander vergleicht, ka obs überhaupt geht, wenn ja wahrscheinlich *****lahm, aber egal, naja, en ansatz halt ^^
     
  3. 26. Dezember 2005
    Ich würde eine StringList deklarieren und die mit den Wörtern füllen.

    In einer Stringliste kann man die einzelnen Elemente viel schneller vergleichen.
    Man generiert eine zweite Stringliste und lässt eine Schleife die erste Liste durchlaufen und nur, wenn das Wort nicht in der zweiten vorhanden ist, wird's in die zweite übertragen.
    Die zweite Liste wird dann wieder in einen String umgewandelt.

    Wenn du Interesse hast, mach' ich dir da einen Quellcode draus...

    Cyk
     
  4. 29. Dezember 2005
    ich muss nochmal hier pushen, da wegen dem server hier postings nicht gezählt wurden ?( ?( ?( ?(
     
  5. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.