Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.119 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: StringReplace mit Tücken ... Lösung gesucht ...

  Alt 3. Nov 2006, 15:29
Moin Dominik,

eine Variante hätte ich auch noch anzubieten:

Delphi-Quellcode:
function MakeCorrectString(const Data: String): String;

var
  sResult : string;
  iLen : Integer;
  iPos : Integer;

begin
  SetLength(sResult,Length(Data));
  iPos := 1;
  iLen := 0;
  while (iPos <= Length(Data)) do begin
    inc(iLen);
    case Data[iPos] of
      #05 : begin
        Inc(iPos);
        if (iPos <= Length(Data)) then begin
          case Data[iPos] of
            #18 : sResult[iLen] := #02;
            #19 : sResult[iLen] := #03;
            #21 : sResult[iLen] := #05;
            else begin
              sResult[iLen] := #05;
              inc(iLen);
              sResult[iLen] := Data[iPos];
            end;
          end;
        end;
      end;
      else begin
        sResult[iLen] := Data[iPos];
      end;
    end;
    inc(iPos);
  end;
  Result := Copy(sResult,1,iLen);
end;
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat