Voila, j'aimerai remplacé un caractère par un autre dans une chaine.
J'ai vu qu'il éxistait une fonction qui s'appelle string replace:
function StringReplace(const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string;
Seulement je n'arrive pas a me servir de cette fonction car je ne sais pas quoi mettre pour le TReplaceFlags...
Sinon, j'ai tenté de faire une fonction moi même:
Code :
- function remplacer(S,C1,C2:string):string;
- var
- a,b:integer;
- S1,S2:string;
- begin
- result:='';
- a:=0;
- b:=0;
- repeat
- if S[a]=C1 then
- begin
- b:=0;
- repeat
- S1:=S1+S[b];
- b:=b+1;
- until b=a-1;
- b:=strlen(pchar(S));
- repeat
- S2:=S[b]+S2;
- b:=b-1;
- until b=a+1;
- result:=S1+C2+S2;
- end;
- a:=a+1;
- until a=strlen(pchar(S));
- end;
|
Cette fonction marche bien quand C2 est une chaîne vide, mais lorsqu'elle contient quelque chose, j'obtien un Access Violation a cette ligne : if S[a]=C1 then
Voila, donc j'aimerai soit savoir comment marche StringReplace et encore mieux d'ou vient cet Access Violation qui me revien souvent
Merci d'avance !