<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.3.1" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>
<channel>
	<title>Comments on: Retornando o último número (script Python)</title>
	<link>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/</link>
	<description>XML, XHTML, CSS, Tableless, Desenvolvimento Web, Python, Linux</description>
	<pubDate>Sun, 14 Mar 2010 00:44:33 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.1</generator>
		<item>
		<title>By: Converter formato de data do MySQL para o formato BR, em uma linha de código só &#171; Frederico Fiuza o/ UND3RW0LRD OF D3RF</title>
		<link>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-134291</link>
		<dc:creator>Converter formato de data do MySQL para o formato BR, em uma linha de código só &#171; Frederico Fiuza o/ UND3RW0LRD OF D3RF</dc:creator>
		<pubDate>Tue, 08 Jan 2008 10:40:44 +0000</pubDate>
		<guid>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-134291</guid>
		<description>[...] não &#8230; quero ver agora como faz isso com Python &#8230; o Elcio Ferreira talvez ache uma solução &#8230;ou meu camarada Tio Mike, ou [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] não &#8230; quero ver agora como faz isso com Python &#8230; o Elcio Ferreira talvez ache uma solução &#8230;ou meu camarada Tio Mike, ou [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: WillianFernandes.com.br &#187; Retornando o último número (script JavaScript) - Python, PHP, JavaScript, AJAX, XML, XHTML, CSS, Desenvolvimento Web, Linux</title>
		<link>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109274</link>
		<dc:creator>WillianFernandes.com.br &#187; Retornando o último número (script JavaScript) - Python, PHP, JavaScript, AJAX, XML, XHTML, CSS, Desenvolvimento Web, Linux</dc:creator>
		<pubDate>Thu, 22 Nov 2007 17:18:28 +0000</pubDate>
		<guid>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109274</guid>
		<description>[...] DGmike publicou o post Retornando o último número (script PHP), o Elcio mostrou a visão dele em Retornando o último número (script Python) e resolvi fazer o mesmo em [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] DGmike publicou o post Retornando o último número (script PHP), o Elcio mostrou a visão dele em Retornando o último número (script Python) e resolvi fazer o mesmo em [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: DGmike</title>
		<link>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109273</link>
		<dc:creator>DGmike</dc:creator>
		<pubDate>Thu, 22 Nov 2007 17:13:32 +0000</pubDate>
		<guid>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109273</guid>
		<description>No meu blog, o junior deu uma solução interessante e eu fiz alguns testes de velocidade (os resultados estão no meu blog). Parece que a solução dele foi melhor, além de ser um pouco mais enxuta. Então eu a adaptei a uma função:
&lt;code&gt;
function ultimo_numero ($string = '')
{
  if ('string' === gettype ($string))
  {
    return;
  }
  $string = preg_split ( '/[^\d]+/', $string );
  return end ( $string );
}
&lt;/code&gt;
Se retirar esse if, a função sempre retornará uma string (verifiquei isso usando o var_dump() )</description>
		<content:encoded><![CDATA[<p>No meu blog, o junior deu uma solução interessante e eu fiz alguns testes de velocidade (os resultados estão no meu blog). Parece que a solução dele foi melhor, além de ser um pouco mais enxuta. Então eu a adaptei a uma função:<br />
<code class="prettyprint"><br />
function ultimo_numero ($string = '')<br />
{<br />
  if ('string' === gettype ($string))<br />
  {<br />
    return;<br />
  }<br />
  $string = preg_split ( '/[^\d]+/', $string );<br />
  return end ( $string );<br />
}<br />
</code><br />
Se retirar esse if, a função sempre retornará uma string (verifiquei isso usando o var_dump() )</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gabriel Falcão</title>
		<link>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109223</link>
		<dc:creator>Gabriel Falcão</dc:creator>
		<pubDate>Thu, 22 Nov 2007 13:52:07 +0000</pubDate>
		<guid>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109223</guid>
		<description>ops, esqueci de escapar:

&#62;&#62;&#62; def ultimo(string):
...     a = re.search(r'(?P&#60;ultimo&#62;\d+)[^\d]*$', string)
...     return a and a.group('ultimo')
... 
&#62;&#62;&#62; ultimo('dsadasdas22222dddd233')
'233'
&#62;&#62;&#62; ultimo('dsadasdas22222dddd')
'22222'
&#62;&#62;&#62; ultimo('1a')
'1'
&#62;&#62;&#62; ultimo('1a2')
'2'</description>
		<content:encoded><![CDATA[<p>ops, esqueci de escapar:</p>
<p>&gt;&gt;&gt; def ultimo(string):<br />
&#8230;     a = re.search(r&#039;(?P&lt;ultimo&gt;\d+)[^\d]*$&#039;, string)<br />
&#8230;     return a and a.group(&#039;ultimo&#039;)<br />
&#8230;<br />
&gt;&gt;&gt; ultimo(&#039;dsadasdas22222dddd233&#039;)<br />
&#039;233&#039;<br />
&gt;&gt;&gt; ultimo(&#039;dsadasdas22222dddd&#039;)<br />
&#039;22222&#039;<br />
&gt;&gt;&gt; ultimo(&#039;1a&#039;)<br />
&#039;1&#039;<br />
&gt;&gt;&gt; ultimo(&#039;1a2&#039;)<br />
&#039;2&#039;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gabriel Falcão</title>
		<link>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109222</link>
		<dc:creator>Gabriel Falcão</dc:creator>
		<pubDate>Thu, 22 Nov 2007 13:50:54 +0000</pubDate>
		<guid>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109222</guid>
		<description>gostei mais da sua, mas aqui vai a minha:

&#62;&#62;&#62; def ultimo(string):
...     a = re.search(r'(?P\d+)[^\d]*$', string)
...     return a and a.group('ultimo')
... 
&#62;&#62;&#62; ultimo('dsadasdas22222dddd233')
'233'
&#62;&#62;&#62; ultimo('dsadasdas22222dddd')
'22222'
&#62;&#62;&#62; ultimo('1a')
'1'
&#62;&#62;&#62; ultimo('1a2')
'2'</description>
		<content:encoded><![CDATA[<p>gostei mais da sua, mas aqui vai a minha:</p>
<p>&gt;&gt;&gt; def ultimo(string):<br />
&#8230;     a = re.search(r&#039;(?P\d+)[^\d]*$&#039;, string)<br />
&#8230;     return a and a.group(&#039;ultimo&#039;)<br />
&#8230;<br />
&gt;&gt;&gt; ultimo(&#039;dsadasdas22222dddd233&#039;)<br />
&#039;233&#039;<br />
&gt;&gt;&gt; ultimo(&#039;dsadasdas22222dddd&#039;)<br />
&#039;22222&#039;<br />
&gt;&gt;&gt; ultimo(&#039;1a&#039;)<br />
&#039;1&#039;<br />
&gt;&gt;&gt; ultimo(&#039;1a2&#039;)<br />
&#039;2&#039;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daniel Luz</title>
		<link>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109219</link>
		<dc:creator>Daniel Luz</dc:creator>
		<pubDate>Thu, 22 Nov 2007 13:21:01 +0000</pubDate>
		<guid>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109219</guid>
		<description>DGmike, o que eu quis dizer sobre o tratamento do tipo de dados era mais sobre a entrada, que você verificava se o parâmetro passado era string... no retorno não sei se dar um parâmetro opcional vale a pena (em PHP não bastaria um (int)ultimoNum($x)?). Então até por questões de comparação, acho mais justo não colocar isso apenas no PHP, fica injustamente maior quando no fim a linguagem permitiria converter o resultado pra int com a mesma facilidade que as outras ;)

E aqui uma versão em JavaScript:
&lt;code&gt;function ultimoNum(string) {
    var match = string.match(/(\d+)\D*$/);
    if (match) {
        return match[1];
    }
}&lt;/code&gt;
Ela também teve um pequeno toque específico à linguagem: só dei return caso um número seja encontrado, para que caso contrário a função retorne undefined em vez de null ou string em branco, o que me pareceu mais apropriado :) Mas se a briga for por número de linhas de código, dá pra reduzir o return a um condicional como os outros, retornando até mesmo undefined, estando disposto a deixar o código um pouco menos legível pra quem não está habituado à linguagem.</description>
		<content:encoded><![CDATA[<p>DGmike, o que eu quis dizer sobre o tratamento do tipo de dados era mais sobre a entrada, que você verificava se o parâmetro passado era string&#8230; no retorno não sei se dar um parâmetro opcional vale a pena (em PHP não bastaria um (int)ultimoNum($x)?). Então até por questões de comparação, acho mais justo não colocar isso apenas no PHP, fica injustamente maior quando no fim a linguagem permitiria converter o resultado pra int com a mesma facilidade que as outras <img src='http://blog.elcio.com.br/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>E aqui uma versão em JavaScript:<br />
<code class="prettyprint">function ultimoNum(string) {<br />
    var match = string.match(/(\d+)\D*$/);<br />
    if (match) {<br />
        return match[1];<br />
    }<br />
}</code><br />
Ela também teve um pequeno toque específico à linguagem: só dei return caso um número seja encontrado, para que caso contrário a função retorne undefined em vez de null ou string em branco, o que me pareceu mais apropriado <img src='http://blog.elcio.com.br/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> Mas se a briga for por número de linhas de código, dá pra reduzir o return a um condicional como os outros, retornando até mesmo undefined, estando disposto a deixar o código um pouco menos legível pra quem não está habituado à linguagem.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Paulo Vitor</title>
		<link>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109078</link>
		<dc:creator>Paulo Vitor</dc:creator>
		<pubDate>Thu, 22 Nov 2007 12:20:56 +0000</pubDate>
		<guid>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109078</guid>
		<description>PHP ::

function ultimoNumero($string){
	preg_match_all('/\d+/', $string, $p);
	return $p[0][count($p[0])-1];
}</description>
		<content:encoded><![CDATA[<p>PHP ::</p>
<p>function ultimoNumero($string){<br />
	preg_match_all(&#039;/\d+/&#039;, $string, $p);<br />
	return $p[0][count($p[0])-1];<br />
}</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: DGmike</title>
		<link>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109074</link>
		<dc:creator>DGmike</dc:creator>
		<pubDate>Thu, 22 Nov 2007 12:17:01 +0000</pubDate>
		<guid>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109074</guid>
		<description>E a versão resumida-filha-da-mae-num-consigo-entender-nada em php.

&lt;code&gt;
function ultimoNum ($s='',$rs=true){
  $s=preg_match_all('\d+',(string) $s,$m);
  $r=end($m[0])?end($m[0]):'';
  if($rs)return (string) $r;
  else return (int) $r;
}
&lt;/code&gt;

Hmmm... como ficaria em javaScript?</description>
		<content:encoded><![CDATA[<p>E a versão resumida-filha-da-mae-num-consigo-entender-nada em php.</p>
<p><code class="prettyprint"><br />
function ultimoNum ($s='',$rs=true){<br />
  $s=preg_match_all('\d+',(string) $s,$m);<br />
  $r=end($m[0])?end($m[0]):'';<br />
  if($rs)return (string) $r;<br />
  else return (int) $r;<br />
}<br />
</code></p>
<p>Hmmm&#8230; como ficaria em javaScript?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: DGmike</title>
		<link>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109071</link>
		<dc:creator>DGmike</dc:creator>
		<pubDate>Thu, 22 Nov 2007 12:12:39 +0000</pubDate>
		<guid>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109071</guid>
		<description>Então... a versão em PHP melhorada, com base no que o Daniel disse:
&lt;code&gt;
function ultimo_numero ($string = '', $retornarString = true)
  {
    $string = (string) $string;
    $string = preg_match_all ('(\d+)', $string, $match);
    $return = end($match[0]) ? end($match[0]) : '';
    if ($retornarString)
      {
        return (string) $return;
      } else {
        return (int) $return;
      }
  }
&lt;/code&gt;

Meio complexo, mas funciona sempre retornando uma string ou um inteiro, para você poder utilizar como você quiser. Ficou um pouco mais complicada e maior, mas é bem mais completa. :D</description>
		<content:encoded><![CDATA[<p>Então&#8230; a versão em PHP melhorada, com base no que o Daniel disse:<br />
<code class="prettyprint"><br />
function ultimo_numero ($string = '', $retornarString = true)<br />
  {<br />
    $string = (string) $string;<br />
    $string = preg_match_all ('(\d+)', $string, $match);<br />
    $return = end($match[0]) ? end($match[0]) : '';<br />
    if ($retornarString)<br />
      {<br />
        return (string) $return;<br />
      } else {<br />
        return (int) $return;<br />
      }<br />
  }<br />
</code></p>
<p>Meio complexo, mas funciona sempre retornando uma string ou um inteiro, para você poder utilizar como você quiser. Ficou um pouco mais complicada e maior, mas é bem mais completa. <img src='http://blog.elcio.com.br/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daniel Luz</title>
		<link>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109061</link>
		<dc:creator>Daniel Luz</dc:creator>
		<pubDate>Thu, 22 Nov 2007 11:31:03 +0000</pubDate>
		<guid>http://blog.elcio.com.br/retornando-o-ultimo-numero-script-python/#comment-109061</guid>
		<description>Aliás... uma daquelas soluções que você bate na cabeça e diz "por que não pensei nisso antes?"

&lt;code&gt;def ultimoNumero(string):
    match = re.search(r'(\d+)\D*$', string)
    return match.group(1) if match else None&lt;/code&gt;

Ou em Ruby:

&lt;code&gt;def ultimo_numero(string)
  string =~ /(\d+)\D*\Z/ ? $1 : nil
end&lt;/code&gt;

Mais simples e computacionalmente mais leve :)</description>
		<content:encoded><![CDATA[<p>Aliás&#8230; uma daquelas soluções que você bate na cabeça e diz &#034;por que não pensei nisso antes?&#034;</p>
<p><code class="prettyprint">def ultimoNumero(string):<br />
    match = re.search(r'(\d+)\D*$', string)<br />
    return match.group(1) if match else None</code></p>
<p>Ou em Ruby:</p>
<p><code class="prettyprint">def ultimo_numero(string)<br />
  string =~ /(\d+)\D*\Z/ ? $1 : nil<br />
end</code></p>
<p>Mais simples e computacionalmente mais leve <img src='http://blog.elcio.com.br/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
</channel>
</rss>
