Substituir Caracteres Especiais Em Zeichenfolgen Delphi
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) do begin pos :Ord =(s[Ich]); if (s[Ich] in [#32, #48..#57, #65..#90, #97..#122]) then Result[Ich] := s[Ich] else begin pos := AnsiPos(s[Ich], undesiredchars); Ergebnis[Ich] := ersetzt[POS + 1]; Ende; Ende; Ende;
2 Antworten
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.