Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#7

Re: StringList schnell nach mehreren Strings durchsuchen

  Alt 2. Okt 2007, 16:19
Zitat von peschai:
Delphi-Quellcode:
  s1 := List.Text+#0; //Liste ine eine Zeichenkette für ZeigerWandern umwandeln:
  { Nachteil platz, Vorteil Speed }
Das Anhängen von #0 kann man sich sparen, da grundsätzlich jeder AnsiString mit einem #0 endet.
Delphi-Quellcode:
   s2 := strs[j]+#0; // Suchwort für pChar Zeiger vorbereiten
   While (AnsiStrPos(@s1[i],@s2[1])<>NIL) do // s2 suchen ab position s1[i]
So sieht's besser aus:
Delphi-Quellcode:
  s2 := strs[j]; // aktuelles Suchwort
  While (AnsiStrPos(@s1[i], PChar(s2))<>NIL) do // s2 suchen ab position s1[i]
Man könnte noch weiter optimieren, wenn man anstatt @s1[i] einen Zeigen vom Typ PChar verwendet.
Andreas
  Mit Zitat antworten Zitat