Einzelnen Beitrag anzeigen

ToFaceTeKilla

Registriert seit: 17. Mai 2006
Ort: Leipzig
283 Beiträge
 
Delphi XE2 Professional
 
#1

AnsiPos vs. AnsiContainsText - was ist schneller?

  Alt 23. Mai 2008, 13:45
Hiho,

ich muss gestehen ich bin atm etwas verwirrt:
Ich habe bis eben AnsiPos(SubStr, Str) benutzt, um Str (eine String aus einem Datenset einer DB, also verändert sich) nach SubStr (ein fester Str) zu durchsuchen. Als die Funktion, in die ich das eingebaut hab, ein falsches Ergebnis lieferte, wurde ich stutzig:
Und zwar hat mir AnsiPos(Wohnanlagenkreis, Wohnanlage) als = 1 zurückgegeben. Das kann doch aber nicht sein oder? Weil "Wohnanlagenkreis" ist doch durch das "-kreis" nicht in "Wohnanlage" enthalten...

Na gut, hab ich die SuFu gewälzt und dann das ganze auf AnsiContainsText(Text, SubText) [Achtung: vertauschte Reihenfolge!] umgebaut. Beim Ausführen hab ich allerdings den Eindruck, dass AnsiContainsText etwas langsamer ist. Kann das sein?


Achso, was mir bei der Suche in der DP aufgefallen ist, hier wird AnsiPos irgendwie anders benutzt... wurde das von Delphi6 zu 7 geändert? Weil in der OH steht bei mir:
Zitat:
Mit AnsiPos können Sie den Byte-Offset des Parameters Substr im String S ermitteln. Wenn Substr beispielsweise 'AB' und S 'ABCDE' enthält, gibt AnsiPos den Wert 1 zurück. Ist Substr nicht in S enthalten, gibt die Funktion 0 zurück.
Das sieht für mich nicht nach Position-zurückgeben aus...

Kann jemand meine 3 Probleme aufklären?

Danke schonmal
Billy Gerwitz
"Bei der Softwareentwicklung suchen wir nicht den richtigen Weg, sondern den am wenigsten falschen." - frei nach V. Hillmann
  Mit Zitat antworten Zitat