Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

Re: Doppelte Zeichen auslesen

  Alt 28. Aug 2006, 15:28
AABBAABA ergibt sogar 5, was ebenfalls falsch ist.

möglich wäre höchstens noch sowas,
Result := Length(S) - Length(StringReplace(S, Ch + Ch, Ch, [rfReplaceAll])); wobei man dieses auch wieder in 'ner Schleife durchgehen müßte, da StringReplace das Ersetzungsergebnis nicht wieder in den nächsten Suchvorgang mit einbezieht:
Delphi-Quellcode:
Temp := S;
Repeat
  Temp2 := Temp;
  Temp := StringReplace(Temp, Ch + Ch, Ch, [rfReplaceAll]));
Until Temp = Temp2;
Result := Length(S) - Length(Temp);
wobei ich dennoch einen Code empfehlen würde, wo der String nicht (intern) verändert wird ... unnötige String-/Speicheroperationen müssen ja nicht sein.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat