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