Funcao retira caracter especial

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
vinicampos
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 14
Registrado em: Sex, 23 Set 2011 7:18 pm
Localização: APUCARANA - PR

alguém conhece ou tem alguma funcao que retira qualquer carater especial do texto? Obrigado
dunirvana
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 5
Registrado em: Sex, 12 Mar 2010 8:42 am
Localização: Ribeirão Preto - SP
Contato:
------
O coração tem razões que a própria razão desconhece
---

Você pode usar o translate, veja um exemplo em:

http://profissionaloracle.com.br/blogs/ ... 8/07/15/1/
arthae
Rank: Programador Sênior
Rank: Programador Sênior
Mensagens: 52
Registrado em: Seg, 09 Mai 2011 1:13 pm
Localização: Porto Alegre - RS
GIVE ME COFFEE AND NO ONE GETS HURT!

Já foi postado aqui uma solução para isso.
É sempre bom utilizar a ferramenta de pesquisa do fórum!

http://glufke.net/oracle/viewtopic.php?t=516
JLMANA
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 13
Registrado em: Ter, 22 Nov 2011 8:22 am

Selecionar tudo

CREATE OR REPLACE FUNCTION FUNC1 (I_TEXTO IN VARCHAR2) RETURN VARCHAR2 IS
   V_TEXTO    VARCHAR2(32767);
BEGIN                                                                 
   V_TEXTO := I_TEXTO;
   V_TEXTO := REPLACE(V_TEXTO,'Ã','A');
   V_TEXTO := REPLACE(V_TEXTO,'Õ','O');
   V_TEXTO := REPLACE(V_TEXTO,'ã','a');
   V_TEXTO := REPLACE(V_TEXTO,'õ','o');
   V_TEXTO := REPLACE(V_TEXTO,'Á','A');
   V_TEXTO := REPLACE(V_TEXTO,'É','E');
   V_TEXTO := REPLACE(V_TEXTO,'Í','I');
   V_TEXTO := REPLACE(V_TEXTO,'Ó','O');
   V_TEXTO := REPLACE(V_TEXTO,'Ú','U');
   V_TEXTO := REPLACE(V_TEXTO,'á','a');
   V_TEXTO := REPLACE(V_TEXTO,'é','e');
   V_TEXTO := REPLACE(V_TEXTO,'í','i');
   V_TEXTO := REPLACE(V_TEXTO,'ó','o');
   V_TEXTO := REPLACE(V_TEXTO,'ú','u');
   V_TEXTO := REPLACE(V_TEXTO,'À','A');
   V_TEXTO := REPLACE(V_TEXTO,'à','a');
   V_TEXTO := REPLACE(V_TEXTO,'Â','A');
   V_TEXTO := REPLACE(V_TEXTO,'Ê','E');
   V_TEXTO := REPLACE(V_TEXTO,'Ô','O');
   V_TEXTO := REPLACE(V_TEXTO,'â','a');
   V_TEXTO := REPLACE(V_TEXTO,'ê','e');
   V_TEXTO := REPLACE(V_TEXTO,'ô','o');
   V_TEXTO := REPLACE(V_TEXTO,'ç','c');
   V_TEXTO := REPLACE(V_TEXTO,'Ç','C');
   V_TEXTO := REPLACE(V_TEXTO,'ü','u');
   V_TEXTO := REPLACE(V_TEXTO,'Ü','U');
   V_TEXTO := REPLACE(V_TEXTO,'º','.');
   V_TEXTO := REPLACE(V_TEXTO,'ª','.');
   V_TEXTO := REPLACE(V_TEXTO,';',' ');
   V_TEXTO := REPLACE(V_TEXTO,'&',' '); 
   V_TEXTO := REPLACE(V_TEXTO,CHR(39),' ');
   RETURN V_TEXTO;
END FUNC1;
/
SHOW ERRORS;
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 4 visitantes