Heute hatte ich ein altes System getan in Delphi zum Generieren von Dateien mit einigen Informationen ändern. Nestas informações há elementos que se utilizam de caracteres não Alpha-numéricos como “;:”; e “;/”; und siehe, zu meiner Überraschung bin ich verpflichtet, sie zu entfernen.
Procurei por uma função que substituísse caracteres como “;Ç”; para “;C”; und fand nur Entfernung Funktionen.
Dann habe ich meine, das ist knapp unter.
{ Sonderzeichen für ASCII-Entsprechungen ersetzt } Funktion ReplaceNonAscii(const s: Zeichenfolge) : Zeichenfolge; Var ich, POS: Ganze Zahl; const undesiredchars : Zeichenfolge = ' / ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ × ØÙÜÚÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùüúþÿ'; const ersetzt : Zeichenfolge = 'AAAAAAACEEEEIIIIDNOOOOOxOUUUbBaaaaaaaceeeeiiiionooooo Ouuuby'; BEGIN SetLength(Ergebnis, Länge(s)); denn ich := 1 Länge(s) fangen die pos :Ord =(s[Ich]); if (s[Ich] in [#32, #48..#57, #65..#90, #97..#122]) dann führen[Ich] := s[Ich] sonst beginnen pos := AnsiPos(s[Ich], undesiredchars); Ergebnis[Ich] := ersetzt[POS + 1]; Ende; Ende; Ende;
Poderia colocar de forma certa? e não traduzido
Fica até melhor para entender, do que tentar decifrar o que é “;para eu”; e “;final”;
Não entendi o questionamento.