<div dir="ltr"><div class="gmail_default" style="font-family:'courier new',monospace;color:rgb(51,0,0)">Aureliano,</div><div class="gmail_default" style="font-family:'courier new',monospace;color:rgb(51,0,0)"><br></div><div class="gmail_default" style="font-family:'courier new',monospace;color:rgb(51,0,0)">Sobre, \w, \W, \s, \S, mais informações em <a href="http://perldoc.perl.org/perlre.html#Regular-Expressions" target="_blank">http://perldoc.perl.org/perlre.html#Regular-Expressions</a> , item Character Classes and other Special Escapes.</div><div class="gmail_default"><font color="#330000" face="courier new, monospace"><br></font></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace">Para casar apenas com um A, C, U ou G você deveria usar /</span><span style="color:rgb(51,0,0);font-family:'courier new',monospace">[</span><span style="color:rgb(51,0,0);font-family:'courier new',monospace">ACUG]/. Para casar com 3 dessas letras acrescente {3} para indicar 'três vezes', assim: </span><span style="color:rgb(51,0,0);font-family:'courier new',monospace">/</span><span style="color:rgb(51,0,0);font-family:'courier new',monospace">[</span><span style="color:rgb(51,0,0);font-family:'courier new',monospace">ACUG]{3}/</span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace"><br></span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace">No caso da sequências de caracteres com as quais você está trabalhando (que contém sempre apenas essas letras), todas as outras opções abaixo são válidas, mas não necessariamente apropriadas.</span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace">/.{3}/ - três caracteres quaisquer</span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace">/\w</span><span style="color:rgb(51,0,0);font-family:'courier new',monospace">{3}/ - três letras</span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace">/\D</span><span style="color:rgb(51,0,0);font-family:'courier new',monospace">{3}/ - três não digitos</span></div><div class="gmail_default"><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace">/\S</span><span style="color:rgb(51,0,0);font-family:'courier new',monospace">{3}/ - três não espaço</span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace">/[^vV]{3}/ - três caracteres que não sejam a letra v</span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace">/</span><span style="color:rgb(51,0,0);font-family:'courier new',monospace">[</span><span style="color:rgb(51,0,0);font-family:'courier new',monospace">ACUG]{3}/i - três caracteres que sejam A, C, U ou G (podendo ser minúsculas)</span><span style="color:rgb(51,0,0);font-family:'courier new',monospace"><br></span></div><div><span style="color:rgb(51,0,0);font-family:'courier new',monospace"><br></span></div><div><span style="color:rgb(51,0,0);font-family:'courier new',monospace"><br></span></div></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace">Quanto às formas de se obter partes de uma sequência de caracteres, eu só tenho o hábito de usar split quando quero remover o delimitador.</span><br></div><div class="gmail_default"><font color="#330000" face="courier new, monospace"><br></font></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace">my $lista_de_numeros = '12,23,34';</span><br></div><div class="gmail_default"><font color="#330000" face="courier new, monospace">my $delimitador = ',';</font></div><div class="gmail_default"><font color="#330000" face="courier new, monospace">my @numeros = split(</font><span style="color:rgb(51,0,0);font-family:'courier new',monospace">$delimitador</span><font color="#330000" face="courier new, monospace">, </font><span style="color:rgb(51,0,0);font-family:'courier new',monospace">$lista_de_numeros);</span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace"><br></span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace"><br></span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace">Uma outra forma possível de fazer esse mesmo trabalho é:</span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace"><br></span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace">my @codons;</span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace"># global continue pegando de um a três caracteres (para caso len($ma) mod 3 não dê zero)</span><span style="color:rgb(51,0,0);font-family:'courier new',monospace"><br></span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace">while ($ma =~ /\G(.{1,3})/gc) {</span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace">  push @codons, $1;</span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace">}</span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace"><br></span></div><div class="gmail_default"><span style="color:rgb(51,0,0);font-family:'courier new',monospace">Abraços,</span></div><div class="gmail_extra"><br clear="all"><div><div><div dir="ltr"><div><font face="verdana, sans-serif">Enrique Pessôa</font></div><div><font face="verdana, sans-serif">________________________________________________________________</font></div><div><font size="1" face="verdana, sans-serif"><b>Enrique Pessôa | Technology Products Manager, Brazil | RR Donnelley | Global Capital Markets</b></font></div><div><div><font size="1" face="verdana, sans-serif"><a href="tel:%2B55%2021%202103.0508" value="+552121030508" target="_blank">+55 21 2103.0508</a></font><span style="font-family:verdana,sans-serif;font-size:x-small"> </span><span style="font-family:verdana,sans-serif;font-size:x-small">|</span><span style="font-family:verdana,sans-serif;font-size:x-small"> <a href="mailto:enrique.pessoa@rrd.com" target="_blank">enrique.pessoa@rrd.com</a></span><span style="font-family:verdana,sans-serif;font-size:x-small"> | +55 21 9.8127.0077</span></div></div><div><div dir="ltr"><div><p><img src="http://www.infoinvest.com.br/images/RRD150logo_POR.png" width="200" height="100"></p><p><b><font color="#274e13" style="font-size:small"><a href="http://www.infoinvest.com.br/" target="_blank"><img src="http://www.infoinvest.com.br/img/infoinvest_logo.png" width="96" height="16"></a> | </font><font color="#444444">15 anos de tecnologia para RI<font size="1"> </font>| </font><a href="https://www.youtube.com/watch?v=gkxxbshF4Ic&feature=youtu.be" style="color:rgb(17,85,204)" target="_blank">Clique para conferir</a></b><br></p></div><div><br></div></div></div></div></div></div>
<br><div class="gmail_quote">Em 7 de novembro de 2014 12:51, Daniel Vinciguerra <span dir="ltr"><<a href="mailto:dan.vinciguerra@gmail.com" target="_blank">dan.vinciguerra@gmail.com</a>></span> escreveu:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">pode usar o split mesmo...<br><br>my @array = split '(\w{3})', $rna;<br></div><div class="gmail_extra"><br clear="all"><div><div><div dir="ltr"><b><br>Daniel Vinciguerra (@dvinciguerra)</b><br>Web solution architect, perl dev, vegetarian, geek and co-founder at <span style="background-color:rgb(255,255,255)"><b>Bivee</b></span><br><span style="font-family:arial,sans-serif;font-size:13px;border-collapse:collapse"><a href="http://bivee.com.br" style="color:rgb(28,81,168)" target="_blank">bivee.com.br</a>  -  <a href="https://github.com/Bivee" target="_blank">github.com/Bivee</a><br></span><span style="font-family:arial,sans-serif;font-size:13px;border-collapse:collapse"></span></div></div></div>
<br><div class="gmail_quote">2014-11-07 12:03 GMT-02:00 Aureliano Guedes <span dir="ltr"><<a href="mailto:guedes_1000@hotmail.com" target="_blank">guedes_1000@hotmail.com</a>></span>:<div><div><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">


<div><div dir="ltr">Funcionou, o fato é que ainda não aprendi bem regex então não conhecia o \w. Mas compreendi completamente o código.<br>Obrigado.<br><br><div><hr>Date: Fri, 7 Nov 2014 11:47:06 -0200<br>From: <a href="mailto:leprevostfv@gmail.com" target="_blank">leprevostfv@gmail.com</a><br>To: <a href="mailto:rio-pm@pm.org" target="_blank">rio-pm@pm.org</a><br>Subject: Re: [Rio-pm] Dúvida com split<div><div><br><br>
  
    
  
  
    Oi Aureliano,<br>
    <br>
    tenta o seguinte:<br>
    <br>
    my @codons = $rna =~ m/\w{3}/g;<br>
    <br>
    abraços<br>
    <br>
    <br>
    <div>On 07-11-2014 11:44, Aureliano Guedes
      wrote:<br>
    </div>
    <blockquote>
      
      <div dir="ltr">Ola monges,<br>
        <br>
        Tenho uma dúvida simples.<br>
        Digamos que eu tenha uma string com uma sequencia de RNA:<br>
        $rna = 'AUGACGAAGCGUUGAUCC';<br>
        Só hipotético mesmo.<br>
        <br>
        Então quero agrupar de 3 em 3 letras (nucleotídeos) formando
        codons:<br>
        AUG ACG AAG CGU UGA UCC<br>
        <br>
        Para isso eu acho conveniente colocar em um array, e faço isso
        usando um split<br>
        my @codons = split /condição/, $dna;<br>
        <br>
        O meu problema é na condição, não estou conseguindo uma condição
        para agrupar de 3 em 3 letras já tentei:<br>
        /(A|C|U|G){3}/<br>
        /(A|C|U|G)(A|C|U|G)(A|C|U|G)/<br>
        /(d+){3}/<br>
        /d+\d+\d+\/<br>
        /d+{3}/<br>
        /d+d+d+/<br>
        Ate tentei mexer no split<br>
        my @codons = /(A|U|C|G)/, $rna, 3;<br>
        <br>
        Sei que a dúvida é besta, mas alguém de daria uma luz?<br>
        Obrigado. <br>
      </div>
      <br>
      <fieldset></fieldset>
      <br>
      <pre>_______________________________________________
Rio-pm mailing list
<a href="mailto:Rio-pm@pm.org" target="_blank">Rio-pm@pm.org</a>
<a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a></pre>
      <br>
      <pre>-- 
Felipe da Veiga Leprevost, PhD.
<a href="http://www.leprevost.com.br" target="_blank">www.leprevost.com.br</a>
Laboratory for Proteomics and Protein Engineering.
Fiocruz, Brazil.</pre>
    </blockquote>
  

<br>_______________________________________________
Rio-pm mailing list
<a href="mailto:Rio-pm@pm.org" target="_blank">Rio-pm@pm.org</a>
<a href="http://mail.pm.org/mailman/listinfo/rio-pm" target="_blank">http://mail.pm.org/mailman/listinfo/rio-pm</a></div></div></div>                                           </div></div>
<br>_______________________________________________<br>
Rio-pm mailing list<br>
<a href="mailto:Rio-pm@pm.org" target="_blank">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></div></div><br></div>
<br>_______________________________________________<br>
Rio-pm mailing list<br>
<a href="mailto:Rio-pm@pm.org" target="_blank">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><br></div></div>