[Rio-pm] Ajuda com split

Ole Peter Smith ole.ufg em gmail.com
Domingo Março 17 23:38:25 PDT 2013


o +antes de ] duvidoo.

0le


2013/3/18 Guilherme Alves <guilhermeareal+riopm em gmail.com>

> Só para registrar.
> Fiz isto:
>
> ($var1,$var2,$var3) = split(/[\/\s+]/,$linha,3);
>
>
> Estou conseguindo pegar separando direitinho, porém a $var3 está pegando
> uma quebra de linha.
> Já tentei dar até 2 vezes o chomp($linha) antes do split.
> Alguém sabe me dizer o pq disto estar acontecendo?
>
>
> Obrigado!
>
>
> 2013/3/18 Guilherme Alves <guilhermeareal+riopm em gmail.com>
>
>> Opa,
>>
>> eu fiz primeiro desta forma, pegando o primeiro espaço e depois separando
>> o que tem o /
>> Posso sim garantir que terá apenas uma barra.
>> Depois mudei para separar primeiro pelo / e depois pelo espaço pois
>> estava dando um problema estranho com a quebra de linha.
>>
>> Enfim. Resolvi o problema. Só que eu gostaria de aprender a fazer isto de
>> uma maneira mais simples, onde eu passaria as 3 variáveis de uma só vez.
>>
>> Desta forma eu poderia adaptar fácil para outros casos.. onde por exemplo:
>> Primeira entrada - 25/Bla
>> Segunda Entrada de Texto  -  2/Tal
>>
>>
>> Abs
>>
>>
>> 2013/3/18 Ole Peter Smith <ole.ufg em gmail.com>
>>
>>> eu fazia o split(/\s+/,..) primeiro e depois o split(/[\\\/]/,...)
>>> depois (ou melhor ainda: if (=~/[\\\/]/...).
>>>
>>> 0le
>>>
>>>
>>> 2013/3/18 Ole Peter Smith <ole.ufg em gmail.com>
>>>
>>>> somente se vc pode garantir que nao ha mais '/' nos strings... caso
>>>> sim, tera que tratar isso.
>>>>
>>>> 0le
>>>>
>>>>
>>>> 2013/3/18 Guilherme Alves <guilhermeareal+riopm em gmail.com>
>>>>
>>>>> Caros Monges,
>>>>>
>>>>> venho aqui pedir ajuda de vocês para solucionar o meu problema.
>>>>>
>>>>> Tenho o seguinte arquivo de texto:
>>>>> ----------DATA
>>>>> 25/Bla Primeira Entrada
>>>>> 2/Tal Segunda Entrada de Texto
>>>>> ----------DATA
>>>>>
>>>>> Gostaria de fazer com que o texto fique com:
>>>>>
>>>>> $var1=25
>>>>> $var2=Bla
>>>>> $var3=Primeira Entrada
>>>>>
>>>>> e
>>>>>
>>>>> $var1=2
>>>>> $var2=Tal
>>>>> $var3=Segunda Entrada de Texto
>>>>>
>>>>> Para isto fiz um loop para o tratamento de cada linha. No momento uso
>>>>> 2 splits (um para o "/"e outro para o primeiro espaço em branco)
>>>>>
>>>>> ($var1,$lixo) = split("/",$linha);
>>>>> ($var2,$var3) = split(/\s+/,$lixo,2);
>>>>>
>>>>> Isto funciona porém o $var3 está ficando estranho, possuindo quebras
>>>>> de linhas e tal.
>>>>>
>>>>> Gostaria de saber se existe alguma maneira de eu fazer este split todo
>>>>> de uma só vez, tipo:
>>>>> ($var1,$var2,$var3) = split("/\s+",$linha,3);
>>>>>
>>>>>
>>>>> Obrigado pela ajuda..
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Guilherme Alves
>>>>>
>>>>> Redes, Sites e Sistemas(RSS) - GRIS-DCC-UFRJ
>>>>> Grupo de Resposta a Incidentes de Segurança
>>>>> Conheça o GRIS em www.gris.dcc.ufrj.br
>>>>>
>>>>> _______________________________________________
>>>>> Rio-pm mailing list
>>>>> Rio-pm em pm.org
>>>>> http://mail.pm.org/mailman/listinfo/rio-pm
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>>                                             /////
>>>>                                          ( O O )
>>>> =================oOO==(_)==OOo=================
>>>>             Every day and every hour, I'm Learning more
>>>>           The more I Learn, the less I Know about before
>>>>          The Less I know, the more I want to Look around
>>>>              Diggin' deeper into Higher Ground...  UB40
>>>>                                    .oooO Oooo.
>>>> ==================(     )=(     )=====================
>>>>                                      \  (     )  /
>>>>                                       \_)   (_/
>>>> ===============================================
>>>>                         Ole Peter Smith, IME, UFG
>>>>             http://olepeter.mat.ufg.br<http://www.mat.ufg.br/docentes/olepeter>  -
>>>> ole at mat.ufg.br
>>>> ===============================================
>>>>                    Life sure is a Mystery to be Lived
>>>>                       Not a Problem to be Solved
>>>> ===============================================
>>>>
>>>
>>>
>>>
>>> --
>>>                                             /////
>>>                                          ( O O )
>>> =================oOO==(_)==OOo=================
>>>             Every day and every hour, I'm Learning more
>>>           The more I Learn, the less I Know about before
>>>          The Less I know, the more I want to Look around
>>>              Diggin' deeper into Higher Ground...  UB40
>>>                                    .oooO Oooo.
>>> ==================(     )=(     )=====================
>>>                                      \  (     )  /
>>>                                       \_)   (_/
>>> ===============================================
>>>                         Ole Peter Smith, IME, UFG
>>>             http://olepeter.mat.ufg.br<http://www.mat.ufg.br/docentes/olepeter>  -
>>> ole at mat.ufg.br
>>> ===============================================
>>>                    Life sure is a Mystery to be Lived
>>>                       Not a Problem to be Solved
>>> ===============================================
>>>
>>> _______________________________________________
>>> Rio-pm mailing list
>>> Rio-pm em pm.org
>>> http://mail.pm.org/mailman/listinfo/rio-pm
>>>
>>
>>
>>
>> --
>> Guilherme Alves
>>
>> Redes, Sites e Sistemas(RSS) - GRIS-DCC-UFRJ
>> Grupo de Resposta a Incidentes de Segurança
>> Conheça o GRIS em www.gris.dcc.ufrj.br
>>
>
>
>
> --
> Guilherme Alves
>
> Redes, Sites e Sistemas(RSS) - GRIS-DCC-UFRJ
> Grupo de Resposta a Incidentes de Segurança
> Conheça o GRIS em www.gris.dcc.ufrj.br
>
> _______________________________________________
> Rio-pm mailing list
> Rio-pm em pm.org
> http://mail.pm.org/mailman/listinfo/rio-pm
>



-- 
                                            /////
                                         ( O O )
=================oOO==(_)==OOo=================
            Every day and every hour, I'm Learning more
          The more I Learn, the less I Know about before
         The Less I know, the more I want to Look around
             Diggin' deeper into Higher Ground...  UB40
                                   .oooO Oooo.
==================(     )=(     )=====================
                                     \  (     )  /
                                      \_)   (_/
===============================================
                        Ole Peter Smith, IME, UFG
            http://olepeter.mat.ufg.br<http://www.mat.ufg.br/docentes/olepeter>
 -
ole at mat.ufg.br
===============================================
                   Life sure is a Mystery to be Lived
                      Not a Problem to be Solved
===============================================
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/rio-pm/attachments/20130318/95bc751b/attachment-0001.html>


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