[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