Einzelnen Beitrag anzeigen

bcvs

Registriert seit: 16. Jun 2011
703 Beiträge
 
Delphi 12 Athens
 
#5

AW: Zeichen in String ersetzen

  Alt 20. Dez 2016, 08:38
Ich würde da auch auf jeden Fall über eine Zeichenersetzungs-procedure gehen und da alle möglichen Fälle abarbeiten. Ist doch viel übersichtlicher.

Falls es in D5 noch kein ReplaceStr, AnsiReplaceText, StringReplace oder dergleichen gab, schreib dir einfach eine eigene. z.B.

Delphi-Quellcode:
function ReplaceString(StrOri, SuchStr, Repl:String):String;
var posi:integer;
begin
  posi:=pos(SuchStr, StrOri);
  while posi > 0 do begin
    StrOri:=copy(StrOri,1,posi-1)+ repl +
            copy(StrOri, posi+length(SuchStr), length(StrOri)-posi-length(SuchStr)+1);
    posi:=pos(SuchStr, StrOri);
  end;
  result:=StrOri;
end;
Und dann wie bereits vorgeschlagen:

Delphi-Quellcode:
s := '0,,25,01640X0174,01747,23,,,,47X014747';
s := ReplaceString(s,'X01',' Typ A: ');
s := ReplaceString(s,'01',' Typ B: ');
while Pos(',,',s) > 0 do begin
  s := ReplaceString(s, ',,', ',');
end;
  Mit Zitat antworten Zitat