<span style="font-family: courier new,monospace;">mantovani++ # não sei o que vc andou tomando, mas estou orgulhoso de ver a tua progressão no grupo, saindo daquele &#39;hacker&#39; de meia-tigela para um membro ativo e que consegue explicar pq uma regex não está funcionando direito .... continue assim que o teu caminho será prospero !!! Vc é mas um exemplo de como o grupo ajuda no desenvolvimento de quem deseja se desenvolver !</span><br>

<br><div class="gmail_quote">Em 25 de abril de 2010 18:27, Daniel de Oliveira Mantovani <span dir="ltr">&lt;<a href="mailto:daniel.oliveira.mantovani@gmail.com">daniel.oliveira.mantovani@gmail.com</a>&gt;</span> escreveu:<br>

<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div class="im">if( $names =~ m/(?&lt;last_name&gt;\w+) and \w+ \g{last_name}/ ) {<br>
</div>Ele não teria que retornar &quot;Silva Flintstone&quot; e nem ao menos &quot;Silva&quot;<br>
porque dentro do buffer &quot;&lt;foo&gt;&quot; está &quot;Flinstone&quot;, logo quando você faz<br>
o backreference  \g{last_name},<br>
você está capturando o buffer &quot;&lt;foo&quot;&gt; que é &quot;Flinstone&quot;.<br>
<br>
Para o match do seu if ser verdadeiro, você precisa colocar a<br>
backreference no lugar que faça o match, daquele jeito só daria certo<br>
se o buffer fosse Silva.<br>
if ( $names =~ m/(?&lt;last_name&gt;\w+) and \w+ \w+ \g{last_name}/ ) {<br>
<div class="im">    say &quot;I saw $+{last_name}&quot;;<br>
}<br>
<br>
</div>[]&#39;s<br>
<div class="im"><br>
<br>
2010/4/25 &quot;Flávio R. Lopes&quot; &lt;<a href="mailto:flavio.lopes@links.inf.br">flavio.lopes@links.inf.br</a>&gt;:<br>
</div><div><div></div><div class="h5">&gt; Pessoal, estou tendo dificuldade em enxergar o funcionamento deste programa:<br>
&gt;<br>
&gt; use 5.010;<br>
&gt; my $names = &#39;Fred Flinstone and Wilma Flinstone&#39;;<br>
&gt; if( $names =~ m/(?&lt;last_name&gt;\w+) and \w+ \g{last_name}/ ) {<br>
&gt;   say &quot;I saw $+{last_name}&quot;;<br>
&gt;   }<br>
&gt;<br>
&gt;<br>
&gt; Se eu alterar a variavel &quot;$names&quot; para:<br>
&gt; my $names = &#39;Fred Silva Flinstone and Wilma Silva Flinstone&#39;;<br>
&gt;<br>
&gt; O programa não me retorna mais o sobrenome!!<br>
&gt;<br>
&gt; Como Perl faz esta busca?, ou seja, com o *\w* (que busca tudo) e tendo como<br>
&gt; _delimitador_ o &quot;and&quot;, ele não teria que me retornar &quot;Silva Flintstone&quot;<br>
&gt; ??...ou pelo menos &quot;Silva&quot; ??<br>
&gt;<br>
&gt; Alguém pode me ajudar a enteder este código?<br>
&gt;<br>
&gt; Abraço,<br>
&gt; Flávio<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; SaoPaulo-pm mailing list<br>
&gt; <a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
&gt; <a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br>
&gt;<br>
<br>
<br>
<br>
</div></div><font color="#888888">--<br>
&quot;If you’ve never written anything thoughtful, then you’ve never had<br>
any difficult, important, or interesting thoughts. That’s the secret:<br>
people who don’t write, are people who don’t think.&quot;<br>
</font><div><div></div><div class="h5">_______________________________________________<br>
SaoPaulo-pm mailing list<br>
<a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br>
<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>&quot;o animal satisfeito dorme&quot;. - Guimarães Rosa<br>