Inicio › Foros › Lenguajes de programación, desarrollo, código fuente › Delphi › Procedimiento que quite las tildes/acentos a un texto en Delphi [RESUELTO] › Respuesta a: Procedimiento que quite las tildes/acentos a un texto en Delphi [RESUELTO]
11/17/2023 a las 14:06
#49965
alonsojpd
Superadministrador
Puedes usar la siguiente función, a la que le pasas el texto y te devuelve el mismo texto, pero sin tildes en las vocales:
Delphi/Pascal
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
function quitarTildes (texto : string) : string; const vocalesTildeMin: array [1..5] of string = ('á', 'é', 'í', 'ó', 'ú'); vocalesSinTildeMin: array [1..5] of string = ('a', 'e', 'i', 'o', 'u'); vocalesTildeMay: array [1..5] of string = ('Á', 'É', 'Í', 'Ó', 'Ú'); vocalesSinTildeMay: array [1..5] of string = ('A', 'E', 'I', 'O', 'U'); var i: integer; begin for i := 1 to 5 do begin texto := StringReplace(texto, vocalesTildeMin[i], vocalesSinTildeMin[i], [rfReplaceAll]); texto := StringReplace(texto, vocalesTildeMay[i], vocalesSinTildeMay[i], [rfReplaceAll]); end; Result := texto; end; |
Un ejemplo de uso:
Delphi/Pascal
1 2 3 |
iniciales := inicialesNombre + copy(apellido1, 0, 1) + copy(apellido2, 0, 1); //Quitamos las posibles tildes/acentos iniciales := quitarTildes (iniciales); |