Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Strings durchsuchen (https://www.delphipraxis.net/107795-strings-durchsuchen.html)

Poring 2. Feb 2008 10:39


Strings durchsuchen
 
Huhu,

ich wollte zwei Strings durchsuchen. Im ersten hat man zb. alle Suchbegriffe die es gibt (Test, Test2, Test3 zb). Der zweite den Begriff nachdem man suchen möchte.
Wenn man also nach Tes sucht sollen alle Begriffe die Tes enthalten angezeigt werde.
Ich hatte hier auch schonmal was gefunden:
Delphi-Quellcode:
type
  TsArray = Array of String;

function GetSubStrings(AString: String; Delimiter: Char) : TsArray;
var
  i: Integer;
begin
  SetLength(result, 0);

  i := 0;

  while (Pos(Delimiter, aString) <> 0) do
  begin
    SetLength(Result, i+1);
    Result[i] := Copy(aString, 0, Pos(Delimiter, aString) - 1);
    Delete(aString, 1, Pos(Delimiter, aString));
    inc(i);
  end;

  if (Length(aString) <> 0) then
  begin
    SetLength(Result, i+1);
    Result[i] := aString;
  end;
end;
Nur das Problem: Es geht eben nur mit einem Char. Änder ich Delimiter in ein String um geht dies alles trozdem nicht.
Nun die Frage:
Wie kann ich die suche so umstrukturieren das sie in beiden Strings sucht?

Noch zur Info: Den Suchbegriff gibt man in einem Editfeld ein, und der andere String wo alles enthalten ist, kann entweder nur so ein String sein, ein Memofeld, eine Listbox - eigentlich egal was, es sollte eben nur funktionieren.
(Komplizierter könnte mans nich beschreiben ...)

Vielen Dank schonmal!

Mfg

Noobinator 2. Feb 2008 11:42

Re: Strings durchsuchen
 
was du suchst, ist ein Suchalgorithmus, und davon gibt es mehrere.


Boyer Moore

Poring 2. Feb 2008 13:11

Re: Strings durchsuchen
 
Ok danke.
Ich habe es nun mit einer Suche in einer Listbox realisiert.

Noobinator 2. Feb 2008 23:45

Re: Strings durchsuchen
 
Poste mal bitte deinen Code zu dem Such Algorithmus.

Irgendwie kann ich mir deine Listbox - Antwort nicht vorstellen o.O


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:58 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz