Retirar quebra de linha no final do texto

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
Avatar do usuário
tiago_pimenta
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 213
Registrado em: Qua, 29 Jun 2011 9:49 am
Localização: Barretos / SP

Senhores, boa noite.

Gostaria novamente de uma ajuda de vocês para resolver um "problema" que estou tendo, preciso retirar as linhas em branco (Quebras de Linhas) no final de um texto.

Exemplo do Texto:

Selecionar tudo

"LINHA 01

LINHA 02

LINHA 03

...

LINHA 05



"
O que eu pensei foi, pegar o tamanho do texto e depois fazer um loop reverso para achar a posição do primeiro carácter diferente da quebra de linha "chr(10)", só é aqui que não estou conseguindo achar.

Alguém tem alguma dica para sugerir ?

Att.
DanielNN
Moderador
Moderador
Mensagens: 641
Registrado em: Seg, 03 Set 2007 3:26 pm
Localização: Fortaleza - CE
att,

Daniel N.N.

Você está lendo um arquivo texto(.txt) e quer retirar as linhas vazias finais??
Ou ele está sendo originado de algum outro lugar ou então você que está gerando(e como)?
Avatar do usuário
tiago_pimenta
Rank: DBA Júnior
Rank: DBA Júnior
Mensagens: 213
Registrado em: Qua, 29 Jun 2011 9:49 am
Localização: Barretos / SP

Noctifero,

É uma campo de uma tabela (varchar2) e eu já tinha até feito via FOR LOOP para resolver isso, mas o Chiappa salvou o Brasil.
Veja só : o "final" de algo em Inglês é TRAILING, e no 11g que é o seu (iirc na verdade introduzido no 10gr2) nós Já TEMOS a opção de TRAILING na função TRIM.... Então é SIMPLESMENTE usar o que temos :

Selecionar tudo

select trim(trailing chr(10) from
'LINHA 01
                
LINHA 02
                
LINHA 03



')
from dual
Responder
  • Informação
  • Quem está online

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