Hoy tuve que modificar un sistema antiguo hecho en Delphi para generar archivos que contienen información. Nestas informações há elementos que se utilizam de caracteres não Alpha-numéricos como “;:”; e “;/”; y he aquí, para mi sorpresa yo estoy obligado a eliminarlos.
Procurei por uma função que substituísse caracteres como “;Ç”; para “;C”; y sólo se encuentran las funciones de eliminación.
Entonces he creado mi que está justo debajo.
{ Reemplaza caracteres especiales de equivalentes ASCII } Función ReplaceNonAscii(const s: Cadena) : Cadena; var, POS: Entero; undesiredchars const : Cadena = ' / ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ × ØÙÜÚÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùüúþÿ'; reemplaza const : Cadena = 'AAAAAAACEEEEIIIIDNOOOOOxOUUUbBaaaaaaaceeeeiiiionooooo ouuuby'; Begin SetLength(Resultado, Longitud(s)); para := 1 a la longitud(s) comenzar pos := ord(s[me]); If (s[me] en [#32, #48..#57, #65..#90, #97..#122]) entonces el resultado[me] := s[me] comenzar otra pos := AnsiPos(s[me], undesiredchars); Resultado[me] := reemplaza[POS + 1]; final; final; final;
Podría corregirlo? y sin traducir
Es aún mejor entender, do que tentar decifrar o que é “;para eu”; e “;final”;
No entendí el cuestionamiento.