Einzelnen Beitrag anzeigen

Amateurprofi

Registriert seit: 17. Nov 2005
Ort: Hamburg
1.064 Beiträge
 
Delphi XE2 Professional
 
#3

AW: Doppelte Buchstaben aus String auslesen

  Alt 17. Mai 2019, 18:11
Hallöchen,

ich hätte da mal ne Frage.

Fällt euch eine Idee ein, wie man doppelte Buchstaben aus einem String löschen könnte?

Also z.B. Erwinistdoof, da soll das zweite i und das zweite o gelöscht werden.
Ich hatte die Idee, dass es vielleicht möglich wäre, den gerade gelesenen Buchstaben mit den vorher gelesenen Buchstaben zu vergleichen
und diese bei der erneuten Zusammensetzung des Strings nicht zu berücksichtigen.
Ich habe leider absolut keine Idee wie man dies bewerkstelligen könnte.

Danke und LG
SirMaurice

Delphi-Quellcode:
FUNCTION RemoveRepeatetChars(const S:String):String;
var I,J:Integer; C:Char; UsedChars:Array of Boolean;
begin
   SetLength(UsedChars,Ord(High(Char))+1);
   Result:=S;
   J:=0;
   for I:=1 to Length(Result) do begin
      C:=Result[I];
      if not UsedChars[Ord(C)] then begin
         Inc(J);
         Result[J]:=C;
         UsedChars[Ord(C)]:=True;
      end;
   end;
   SetLength(Result,J);
end;
Gruß, Klaus
Die Titanic wurde von Profis gebaut,
die Arche Noah von einem Amateur.
... Und dieser Beitrag vom Amateurprofi....
  Mit Zitat antworten Zitat