Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi besitmmten String in einer Stringlist suchen (https://www.delphipraxis.net/5567-besitmmten-string-einer-stringlist-suchen.html)

heiopei 11. Jun 2003 13:24


besitmmten String in einer Stringlist suchen
 
Hallo,
wie kann ich einen String(den ich in ein Editfeld eingebe) in einer
Stringlist suchen und dann sagen ob er existiert und wenn ja wo?

Ich habs schon mit Stringlist.Find versucht aber des geht irgendwie net
ganz.

danke

heiopei

sakura 11. Jun 2003 13:26

StringList.IndexOf liefert die Position zurück.

...:cat:...

Phoenix 11. Jun 2003 13:27

Guckst Du:
Code:
TStringList.IndexOf('Suchtext');
Passt Du aber auf: Gross- und kleinschreibung müssen exakt passen.
Wenn die nicht genau übereinstimmen bleibt Dir wohl nichts anderes über, als jeden String in der Liste durchzugehen, zu lowercase zu konvertieren und gegen den suchstring (auch lowercase) selber zu vergleichen.

Christian Seehase 11. Jun 2003 13:31

Moin Heiopei,

Zitat:

Zitat von Heiopei
aber des geht irgendwie net
ganz.

Geht das auch präziser?

Prinzipiell kannst Du Find oder IndexOf verwenden. Ersteres funktioniert nur bei sortierten Listen.
Für beide gilt: Der Wert muss genau dem Inhalt eines Feldes entsprechen, ein Zeichen mehr und der Wert wird nicht gefunden.
Noch eine einfache Möglichkeit wäre die Verwendung von Pos mit der Eigenschaft Text. Das ist aber sehr performancefressend.
Eine etwas günstigere Variante wäre es in einer Schleife durch die Liste zu gehen, und je Zeile mit Pos zu prüfen, ob der gesuchte Wert drinsteht.

Christian Seehase 11. Jun 2003 13:40

Moin Phoenix,

Zitat:

Zitat von Phoenix
Passt Du aber auf: Gross- und kleinschreibung müssen exakt passen.

Hast Du das mit D7 mal ausprobiert?
Zumindest unter D5, ist dem nämlich nicht so, es wird nämlich mittels AnsiCompareText gesucht, und das unterscheidet nicht zwischen Gross-/Kleinschreibung.
Gleiches gilt auch für Find.
Das wird wohl seine Ursache darin haben, dass man für INIs auch Stringlisten braucht, und hier interessiert die Gross-/Kleinschreibung ja auch nicht.

heiopei 11. Jun 2003 13:52

Danke danke,
it seems to work now!!
heiopei


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:47 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