Função para remover acentos


Autor/fonte: Marcos Gambeta
E-mail/Url: http://br.geocities.com/marcosgambeta/clipper/0007.html



Digg del.icio.us

A função apresentada aqui remove os acentos de uma variável do tipo 'character'.

Serve, por exemplo, para situações onde existe um nome acentuado e é necessário imprimí-lo em uma impressora que não suporta acentos. Também pode ser usada para indexar campos que contém letras acentuadas.

Exemplos de uso

1. Removendo os acentos de uma variável do tipo character:

  cNome := "JOSÉ REBOUÇAS FILHO"
  cNome := RemAcent( cNome )
  ? cNome // retorna JOSE REBOUCAS FILHO

2. Removendo os acentos na chave de indexação:

  Use Clientes Alias Clientes New
  Index On RemAcent(Clientes->Nome) To Nome

A função:

  Function RemAcent ( cTexto )

     // acento agudo
     cTexto := StrTran( cTexto, "á", "a" )
     cTexto := StrTran( cTexto, "é", "e" )
     cTexto := StrTran( cTexto, "í", "i" )
     cTexto := StrTran( cTexto, "ó", "o" )
     cTexto := StrTran( cTexto, "ú", "u" )
     cTexto := StrTran( cTexto, "Á", "A" )
     cTexto := StrTran( cTexto, "É", "E" )
     cTexto := StrTran( cTexto, "Í", "I" )
     cTexto := StrTran( cTexto, "Ó", "O" )
     cTexto := StrTran( cTexto, "Ú", "U" )

     // acento circunflexo
     cTexto := StrTran( cTexto, "â", "a" )
     cTexto := StrTran( cTexto, "ê", "e" )
     cTexto := StrTran( cTexto, "î", "i" )
     cTexto := StrTran( cTexto, "ô", "o" )
     cTexto := StrTran( cTexto, "û", "u" )
     cTexto := StrTran( cTexto, "Â", "A" )
     cTexto := StrTran( cTexto, "Ê", "E" )
     cTexto := StrTran( cTexto, "Î", "I" )
     cTexto := StrTran( cTexto, "Ô", "O" )
     cTexto := StrTran( cTexto, "Û", "U" )

     // til
     cTexto := StrTran( cTexto, "ã", "a" )
     cTexto := StrTran( cTexto, "õ", "o" )
     cTexto := StrTran( cTexto, "Ã", "A" )
     cTexto := StrTran( cTexto, "Õ", "O" )

     // ce-cedilha
     cTexto := StrTran( cTexto, "ç", "c" )
     cTexto := StrTran( cTexto, "Ç", "C" )

     // trema
     cTexto := StrTran( cTexto, "ü", "u" )
     cTexto := StrTran( cTexto, "Ü", "U" )

     // crase
     cTexto := StrTran( cTexto, "à", "a" )
     cTexto := StrTran( cTexto, "è", "e" )
     cTexto := StrTran( cTexto, "ì", "i" )
     cTexto := StrTran( cTexto, "ò", "o" )
     cTexto := StrTran( cTexto, "ù", "u" )
     cTexto := StrTran( cTexto, "À", "A" )
     cTexto := StrTran( cTexto, "È", "E" )
     cTexto := StrTran( cTexto, "Ì", "I" )
     cTexto := StrTran( cTexto, "Ò", "O" )
     cTexto := StrTran( cTexto, "Ù", "U" )

     Return cTexto




Enviado por xKuRt em 07/11/2006 às 08:58


Avaliação

Esta publicação ainda não foi avaliada!


Avaliar:


A avaliação de publicações é restrita a membros cadastrados e logados no nosso site.



Comentários

Este artigo ainda não foi comentado ou o(s) comentário(s) que foi(ram) enviado(s) a ele ainda não foi(ram) publicado(s).


Envio de comentário:




  

Quarta, 30 de Julho de 2014




Leitura recomendada

Use a Cabeça! Álgebra

Top 5 membros

Últimos membros online

  • 1em 30/07 às 10:02
  • xKuRtem 27/07 às 15:13
  • JCanecaem 26/07 às 19:02

Últimos membros cadastrados



Capa do livro
Descobrindo o Linux: Entenda o Sistema Operacional GNU / Linux


Capa do livro
Primeiros Passos com o Arduino


Capa do livro
Primavera Enterprise 6





Hostnet

IMD