<p>vergonha nada, orgulho, rapaz!</p>
<p>0le</p>
<p>Send via Android</p>
<div class="gmail_quote">On Nov 26, 2012 1:53 AM, "breno" <<a href="mailto:breno@rio.pm.org">breno@rio.pm.org</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Assim vcs me matam de vergonha =P<br>
<br>
[]s<br>
<br>
-b<br>
<br>
2012/11/24 Blabos de Blebe <<a href="mailto:blabos@gmail.com">blabos@gmail.com</a>>:<br>
> "Três coisas são infinitas: o universo, a paciência do Breno e a<br>
> estupidez humana. Mas, no que respeita ao universo, ainda não adquiri<br>
> a certeza absoluta."<br>
><br>
> 2012/11/24 Ole Peter Smith <<a href="mailto:ole.ufg@gmail.com">ole.ufg@gmail.com</a>>:<br>
>><br>
>> On Nov 24, 2012 4:52 PM, "Aureliano Guedes" <<a href="mailto:guedes_1000@hotmail.com">guedes_1000@hotmail.com</a>> wrote:<br>
>>><br>
>>> Breno, que ser meu orientador... hahaha...<br>
>><br>
>> se eu era reitor universitario, eu daria o grau de dr honoratis para o este<br>
>> nosso breno, pela sua competencia, vastoconhecimento e infinita paciencia de<br>
>> enseminar conhecimentos!!!!<br>
>><br>
>> 0le<br>
>><br>
>><br>
>>><br>
>>> Enfim, ficou assim <a href="http://pastebin.com/zrpLGwQs" target="_blank">http://pastebin.com/zrpLGwQs</a><br>
>>><br>
>>> Ha algo que você mudaria???<br>
>>><br>
>>> > Date: Sat, 24 Nov 2012 09:45:41 -0200<br>
>>><br>
>>> > From: <a href="mailto:breno@rio.pm.org">breno@rio.pm.org</a><br>
>>> > To: <a href="mailto:rio-pm@pm.org">rio-pm@pm.org</a><br>
>>> > Subject: Re: [Rio-pm] Comparação de arquivos<br>
>>> ><br>
>>> > 2012/11/24 Aureliano Guedes <<a href="mailto:guedes_1000@hotmail.com">guedes_1000@hotmail.com</a>>:<br>
>>> > ><br>
>>> > > Se não for ser muito chato, como faço para seguir a forma abaixo:<br>
>>> > ><br>
>>> > ><br>
>>> > >> 2) trocar de abordagem, fazendo seu parser ler linha a linha (sem<br>
>>> > >> modificar $/) e ir acumulando as linhas até encontrar um símbolo que<br>
>>> > >> indique nova entrada.<br>
>>> > ><br>
>>> > > seria algo do tipo:<br>
>>> > ><br>
>>> > > while (<$fh>){<br>
>>> > > if(/primeira linha/){<br>
>>> > > print $_;<br>
>>> > > }<br>
>>> > > elsif (/ultima linha/){<br>
>>> > > #sair do loop<br>
>>> > > }<br>
>>> > > else {<br>
>>> > > print $_<br>
>>> > > }<br>
>>> > > }<br>
>>> > ><br>
>>> ><br>
>>> > Algo como (atenção, código não testado):<br>
>>> ><br>
>>> > ---------------8<---------------<br>
>>> > my %dados = ();<br>
>>> > my $mirna;<br>
>>> > my $acumulador;<br>
>>> ><br>
>>> > while (my $linha = <$fh>) {<br>
>>> > if ( $linha =~ m{tag magica (?<mirna>\S+)} ) {<br>
>>> > $dados{$mirna} = $acumulador if $mirna;<br>
>>> > $mirna = $+{mirna};<br>
>>> > $acumulador = q();<br>
>>> > }<br>
>>> > else {<br>
>>> > $acumulador .= $linha;<br>
>>> > }<br>
>>> > }<br>
>>> ><br>
>>> > use DDP; p %dados;<br>
>>> ><br>
>>> > --------------->8---------------<br>
>>> ><br>
>>> > O que isso faz (ou deveria fazer: já mencionei que não testei?<br>
>>> > Programar a essa hora da manhã não é meu forte, então favor<br>
>>> > desconsiderar qualquer besteira):<br>
>>> ><br>
>>> > 1) le o arquivo linha por linha, atribuindo o valor de cada linha a<br>
>>> > $linha (sem usar $_)<br>
>>> > 2) sempre que encontrar a tag mágica que separa entradas (estou<br>
>>> > assumindo que a tag indica um novo registro que pode ser chave do seu<br>
>>> > hash de dados:<br>
>>> > 2.1) se já estiver com um registro em memória ($mirna), bota os dados<br>
>>> > acumulados ($acumulador) dentro do hash;<br>
>>> > 2.2) atribui à $mirna o novo registro encontrado. Note que estou<br>
>>> > usando grupos nomeados na regex, fazendo (?<tag>...) em vez de apenas<br>
>>> > (...). Isso funciona a partir do 5.10.0 e me permite acessar os<br>
>>> > valores agrupados na regex por nome dentro do hash %+. No caso,<br>
>>> > acessei o grupo (?<mirna>....) fazendo $+{mirna};<br>
>>> > 2.2) zera o acumulador.<br>
>>> > 3) se não encontrar a tag mágica, vai acumulando os dados. Dentro<br>
>>> > desse 'else' vc pode fazer coisas como "next if $linha =~ /.../" caso<br>
>>> > não queira guardar alguma linha, por exemplo.<br>
>>> > 4) Depois do while vc pode inspecionar %dados para saber se está tudo<br>
>>> > ok.<br>
>>> ><br>
>>> ><br>
>>> > Entendeu?<br>
>>> ><br>
>>> > []s<br>
>>> ><br>
>>> > -b<br>
>>> > _______________________________________________<br>
>>> > Rio-pm mailing list<br>
>>> > <a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
>>> > <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>
>>><br>
>>> _______________________________________________<br>
>>> Rio-pm mailing list<br>
>>> <a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
>>> <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>
>><br>
>><br>
>> _______________________________________________<br>
>> Rio-pm mailing list<br>
>> <a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
>> <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>
> _______________________________________________<br>
> Rio-pm mailing list<br>
> <a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
> <a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>
_______________________________________________<br>
Rio-pm mailing list<br>
<a href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a><br>
</blockquote></div>