menor ainda ;) perl -F\; -anE'chomp$F[1];++$m{$F[0]}{$F[1]}}{$,=";";say X=>keys%m;say $_,@{$m{$_}}{keys%m}for keys%m' tabela.txt
ABS() 2012/6/1 Fernando Oliveira <fernandocor...@gmail.com> > menor: > > perl > -lnE'/;/;$l{$'}//=$i++;$c{$`}=[];$c{$`}[$l{$'}]=1}{$,=";";say"",keys%l;say$_,@{$c{$_}}[values%l]for > keys%c' tabela.txt > > > Just another Perl Hacker, > Fernando (SmokeMachine) > > > Em 1 de junho de 2012 12:56, Fernando Oliveira > <fernandocor...@gmail.com>escreveu: > > Menor: >> >> perl >> -lnE'/;/;$l{$'}//=$i++;$c{$`}=[];$c{$`}[$l{$'}]=1}{$,=";";say"",sort{$l{$a}<=>$l{$b}}keys%l;say$_,@{$c{$_}}[0..keys%l]for >> keys%c' tabela.txt >> >> >> >> >> Just another Perl Hacker, >> Fernando (SmokeMachine) >> >> >> Em 1 de junho de 2012 12:34, Fernando Oliveira >> <fernandocor...@gmail.com>escreveu: >> >> s/exita/exista/ >>> >>> >>> >>> >>> Just another Perl Hacker, >>> Fernando (SmokeMachine) >>> >>> >>> Em 1 de junho de 2012 12:32, Fernando Oliveira <fernandocor...@gmail.com >>> > escreveu: >>> >>> Assumindo q exita o arquivo: tabela.txt >>>> contendo: >>>> >>>> Manoel;Pedro >>>> Joao;Pedro >>>> Pedro;Manoel >>>> >>>> GOLF?! >>>> minha 1a tacada: >>>> >>>> perl >>>> -lnE'/;/;$l{$'}//=$i++;$c{$`}=[];$c{$`}[$l{$'}]=1}{say";",join(";",sort{$l{$a}<=>$l{$b}}keys%l);say >>>> join";",$_,@{$c{$_}}[0..keys%l]for keys%c' tabela.txt >>>> >>>> >>>> Just another Perl Hacker, >>>> Fernando (SmokeMachine) >>>> >>>> >>>> Em 1 de junho de 2012 12:00, Stanislaw Pusep <creakt...@gmail.com>escreveu: >>>> >>>> @breno, infelizmente, se for um "CSV" gerado por algumas ferramentas de >>>>> escritório cujo nome não quero citar nessa lista, expressão regular não >>>>> basta, já dizia o brian d foy: >>>>> http://www.effectiveperlprogramming.com/blog/1386 >>>>> @cleysinho, bacana o Class:CSV, pelo que entendi, é uma interface >>>>> "user-friendly" para o Text::CSV que, apesar de funcionar muito bem, é >>>>> bastante prolixo. Um módulo que tentei usar recentemente é o Parse::CSV, >>>>> porém ele, como já diz o nome, apenas lê o CSV (também via Text::CSV). >>>>> >>>>> ABS() >>>>> >>>>> >>>>> >>>>> >>>>> 2012/6/1 breno <br...@rio.pm.org> >>>>> >>>>>> 2012/6/1 Manoel Domingues Junior <manoel.domingues.jun...@gmail.com>: >>>>>> > Olá pessoal, >>>>>> > >>>>>> > Estou com um dificuldade em encontrar um módulo no cpan que me >>>>>> ajude a >>>>>> > fazer a geração de uma matriz... >>>>>> > >>>>>> > Eu obtenho os dados de um software no seguinte formato: >>>>>> > Manoel;Pedro >>>>>> > João;Pedro >>>>>> > Pedro;Manoel >>>>>> > .... >>>>>> > >>>>>> > Esses dados eu gostaria de colocar em uma matriz do tipo: >>>>>> > X; Pedro;Manoel; >>>>>> > Manoel; 1;; >>>>>> > João;1;; >>>>>> > Pedro;;1; >>>>>> > >>>>>> > Alguém conhece algum módulo que me permita fazer isso? >>>>>> > >>>>>> >>>>>> Manoel, >>>>>> >>>>>> desculpa a pergunta, mas "isso" o quê? Pode ser pq ainda não acordei >>>>>> direito, mas não entendi o que vc está fazendo... >>>>>> >>>>>> Supondo que vc tem uma lista na forma: >>>>>> >>>>>> my @linhas = ( >>>>>> 'Manoel;Pedro', >>>>>> 'João;Pedro', >>>>>> 'Pedro;Manoel', >>>>>> ); >>>>>> >>>>>> você pode gerar uma nova lista fazendo algo como: >>>>>> >>>>>> my @nova = (); >>>>>> >>>>>> foreach my $linha (@linhas) { >>>>>> my @campos = split /\s*;\s*/ => $linha; >>>>>> >>>>>> # modifique @campos como bem entender... >>>>>> >>>>>> push @nova, join ';' => @campos; >>>>>> } >>>>>> >>>>>> é isso? >>>>>> >>>>>> >>>>>> []s >>>>>> >>>>>> -b >>>>>> _______________________________________________ >>>>>> Rio-pm mailing list >>>>>> Rio-pm@pm.org >>>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> Rio-pm mailing list >>>>> Rio-pm@pm.org >>>>> http://mail.pm.org/mailman/listinfo/rio-pm >>>>> >>>> >>>> >>> >> > > _______________________________________________ > Rio-pm mailing list > Rio-pm@pm.org > http://mail.pm.org/mailman/listinfo/rio-pm >
_______________________________________________ Rio-pm mailing list Rio-pm@pm.org http://mail.pm.org/mailman/listinfo/rio-pm