[Cascavel-pm] manipulacao de dados em variavel

Tarik Gregorio tgregorio7 em gmail.com
Quarta Julho 27 08:24:35 PDT 2005


Entendi Alceu, e estava mesmo a procura de um bom livro de perl. So
que nao to conseguindo resolver o cabecalho e pegar a 5a linha. Sempre
vai ser a 5a linha que irei pegar.

Em 27/07/05, Alceu R. de Freitas Jr.<glasswalk3r em yahoo.com.br> escreveu:
> 
> --- Tarik Gregorio <tgregorio7 em gmail.com> escreveu:
> 
> >   To com uma duvida, tenho uma variavel $dados que
> > contem os dados abaixo:
> >
> >
> > CODIGO     DESCRICAO
> > ==========
> > ==================================================
> >
> > 1234       TESTE
> >
> > Preciso pegar somente o 1234 e TESTE e separar em
> > duas variaveis
> > diferentes. Nao estou conseguindo fazer isso, alguem
> > pode me ajudar??
> 
> Estou assumindo que o cabeçalho não faz parte do
> problema, ok?
> 
> Supondo que a variável $dados contenha:
> 
> 1234       TESTE
> 
> e que o espaço entre elas seja formado por espaços
> mesmo, uma solução seria essa:
> 
> $dados =~ s/\s+/|/g;
> @lista_dados = split( /|/, $dados );
> 
> Isso simplesmente elimina os espaços entre as duas
> strings e troca eles por um pipe ("|"). O pipe passa a
> ser o "separador" de dados. A função split() vai pegar
> cada ítem "separado" pelo pipe e adicionar a um índice
> do array @lista_dados. Você poderia adicionar isso a
> um hash também de forma semelhante.
> 
> A forma de criar essa lista de dados pode variar
> bastante... por exemplo, se você obteve a string de
> $dados lendo de um arquivo texto, teria que fazer isso
> primeiro:
> 
> chomp( $dados );
> 
> para remover a quebra de linha. Se você tiver espaços
> antes e depois da string, pode ter que eliminar estar
> também antes de usar o split():
> 
> $dados =~ s/^\s+//g;
> $dados =~ s/\s+$//g;
> 
> Existe muitas formas de fazer isso com Perl, uma vez
> que esse é um problema bastante comum. Recomendo você
> estudar:
> 
> perldoc perlre
> perldoc -f split
> perldoc -f join
> perldoc -f map
> perldoc -f grep
> 
> Dois livros que vão lhe ajudar bastante:
> Learning Perl - editora O'Reilly (somente em inglês)
> Gerenciamento de dados com Perl - em português,
> procure em algum site de livros.
> 
> []'s
> 
> 
> 
> 
> Alceu Rodrigues de Freitas Junior
> --------------------------------------
> glasswalk3r em yahoo.com.br
> http://www.imortais.cjb.net
> -----------------------------------------------------------------------
> A well-used door needs no oil on its hinges.
> A swift-flowing stream does not grow stagnant.
> Neither sound nor thoughts can travel through a vacuum.
> Software rots if not used.
> These are great mysteries -- The Tao Of Programming, 5.1
> 
> __________________________________________________
> Converse com seus amigos em tempo real com o Yahoo! Messenger
> http://br.download.yahoo.com/messenger/
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
> 


-- 
Tarik Faria da Silva Gregorio


Mais detalhes sobre a lista de discussão Cascavel-pm