Einzelnen Beitrag anzeigen

DonPedroFo

Registriert seit: 26. Jun 2019
18 Beiträge
 
#6

AW: Zwei Zeilen miteinander Vergleichen (etwas kompliziert)

  Alt 9. Feb 2021, 13:22
Also soweit so gut, das Prinzip funktioniert

hier mal ein Teil stück


Code:
  for x := 0  to (iCount div 3) -1 do
  begin
     PosA := POS('[',sla.Strings[(x)*3]);
     sZeileA := copy(sla.Strings[(x)*3],0,(PosA-1));

     for i := x to (iCount div 3) -1 do
     begin

        PosB := POS('[',sla.Strings[(i+1)*3]);
        sZeileB:= copy(sla.Strings[(i+1)*3],0,(PosB-1));


        if sZeileA = sZeileB then
        vari := (i+1)*3;
        begin
           sCopyA := sla.Strings[vari];
           slB.add(sCopyA);
           sCopyB := sla.Strings[vari+1];
           slb.add(sCopyB);
           sCopyC := sla.Strings[vari+2];
           slb.add(sCopyC);
        end;
     end;
  end;

Was schon mal funktioniert ist, das ich jede Zeile mit jeder Zeile vergleichen kann.
Allerdings kommt auch folgender "Fehler" vor. z.B

Zeile0: Wert1...
...
Zeile10: Wert1....
...
Zeile28: Wert1....

Jetzt wird in meinen durchläufen erstmal die Zeile 0 mit anderen Zeilen verglichen was soweit gut funktioniert,
und am Ende werden mir die anderen zwei Zeilen als Ergebnis gespeichert.

Aber nach ein paar durchläufen wird auch der Wert der Zeile10 mit dem Wert der Zeile28 verglichen, da das Ergebnis natürlich stimmt, wird mir das auch als Ergebnis gespeichert
was an sich ja richtig ist, aber ich habe ja schon davor verglichen das die Zeile0 = Zeile10 = Zeile28 ist, somit wird mir alles irgendwann doppelt und dreifach angezeigt.
usw.


ich hoffe ihr könnt mir folgen.

Geändert von DonPedroFo ( 9. Feb 2021 um 13:25 Uhr)
  Mit Zitat antworten Zitat