Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.140 Beiträge
 
Delphi 12 Athens
 
#5

AW: XE2 Stringfunktion + ASM code : function CountString(...)

  Alt 21. Sep 2011, 12:00
Eine Nicht-Assmbler-Version könnte wohl so aussehn: (ungetestet)
Delphi-Quellcode:
function CountString(const SubStr, S: String): Integer;
var
  i: Integer;
begin
  Result := 0;
  i := 0;
  while True do begin
    i := PosEx(SubStr, S, i + 1);
    if i = 0 then Exit;
    Inc(Result);
  end;
end;
eventuell auch so:
(weiß grade nicht, wie genau gezählt wurde ... ist/war CountString('xxx', 'xxxxxx') = 2 oder 4? )
Delphi-Quellcode:
function CountString(const SubStr, S: String): Integer;
var
  i: Integer;
begin
  Result := 0;
  i := 1;
  while True do begin
    i := PosEx(SubStr, S, i);
    if i = 0 then Exit;
    Inc(i, Length(SubStr));
    Inc(Result);
  end;
end;
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (21. Sep 2011 um 12:04 Uhr)
  Mit Zitat antworten Zitat