AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Stringlisten vergleichen.

Ein Thema von smart · begonnen am 22. Jan 2005 · letzter Beitrag vom 22. Jan 2005
Antwort Antwort
Benutzerbild von smart
smart

Registriert seit: 19. Dez 2004
Ort: Bochum
1.266 Beiträge
 
Delphi 2007 Professional
 
#1

Stringlisten vergleichen.

  Alt 22. Jan 2005, 10:14
Ich habe auf einer TForm 3 TMemos. In Memo2 ist eine Stringliste mit 300 Zeilen. In Memo1 ist eine Stringliste(auch doppelte Strings) die mit der Stringliste in Memo2 verglichen werden soll. Bei einer Übereinstimmung soll der String in Memo3 hinzugefügt werden. Habe diesen Code geschrieben, er klappt aber nicht. Was mach ich falsch?

Code:
procedure TForm1.Button1Click(Sender: TObject);
Var
A, B:Integer;
begin
For A := 0 To Memo2.Lines.Count do
begin
    For B := 0 To Memo1.Lines.Count -1 do
        If Memo1.Lines[A] = Memo2.Lines[B] Then
        begin
            Memo3.Lines.Add(Memo2.Lines[B]);
        end;
    end;
end;
Heike Kretschmann
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#2

Re: Was mache ich falsch!

  Alt 22. Jan 2005, 10:17
Hallo,
versuch es mal so
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
Var
A, B:Integer;
begin
For A := 0 To Memo2.Lines.Count-1 do
begin
    For B := 0 To Memo1.Lines.Count -1 do
        If Memo1.Lines[B] = Memo2.Lines[A] Then
        begin
            Memo3.Lines.Add(Memo2.Lines[A]);
        end;
    end;
end;
I come from outer space to save the human race
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Was mache ich falsch!

  Alt 22. Jan 2005, 10:23
und eine aussagekräftigen Titel wählen!!
du könntest auch mit IndexOf arbeiten, da spaarst du dir eine Schleife.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von smart
smart

Registriert seit: 19. Dez 2004
Ort: Bochum
1.266 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Was mache ich falsch!

  Alt 22. Jan 2005, 10:52
Vielen Dank an Euch Beiden. Nach der Modikikation hat es geklappt. Und ich dachte ich hätte alle Möglichkeiten durch! Der Tittel war dumm gewählt.

SirThornberry, kannst Du bitte etwas konkreter werden. Bin noch Anfänger. Habe in der Delphi- Hilfe unter, IndexOf, nachgesehen. Ich kann aber an Hand der Beispiele nicht ein Ersparnis erkennen.
Heike Kretschmann
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Was mache ich falsch!

  Alt 22. Jan 2005, 10:56
Jetzt hast du schon auf den Beitrag von unserer Lordschaft geantwortet, aber den Titel hast du immer noch nicht sinnvoll geändert. Tu dies bitte noch, in dem du einfach deinen ersten Beitrag editierts.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Stringlisten vergleichen.

  Alt 22. Jan 2005, 15:30
mit indexof würde das ganze so aussehen
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
Var
A:Integer;
begin
For A := 0 To Memo2.Lines.Count-1 do
begin
  if Memo1.Lines.IndexOf(Memo2.Lines[A]) > -1 then
    Memo3.Lines.Add(Memo2.Lines[A]);
end;
"IndexOf" prüft also ob es den String in irgend einer Zeile gibt.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
xineohp

Registriert seit: 29. Jan 2004
Ort: Heusenstamm
420 Beiträge
 
Delphi 2005 Professional
 
#7

Re: Stringlisten vergleichen.

  Alt 22. Jan 2005, 15:47
moin,

du kannst dir natülich auch das entsprechende Kapitl aus der CodeLib anschauen hier
wobei dort natülich auch nur mit Wasser gekocht wird, sprich es ist im Prinzip dasselbe...
Peter Enenkel
blubb
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:21 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz