<meta charset="utf-8"><span class="Apple-style-span" style="border-collapse: collapse; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; "><div>This fixes the infamous one-letter-word-does-not-have-a-second-letter bug.</div>
<div><br></div>sentence.split.sort_by{ |a| a[1] || 'z' } * ' '</span><div><font class="Apple-style-span" color="#222222" face="arial, sans-serif"><span class="Apple-style-span" style="border-collapse: collapse;"><br clear="all">
</span></font>Hakan<br><br><div><a href="http://hakanensari.com" target="_blank">http://hakanensari.com</a><div><br></div></div><br>
<br><br><div class="gmail_quote">On Thu, May 12, 2011 at 11:34 AM, Paul Battley <span dir="ltr"><<a href="mailto:pbattley@gmail.com">pbattley@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im">On 12 May 2011 10:54, Jordi Noguera Leon <<a href="mailto:jordinoguera83@gmail.com">jordinoguera83@gmail.com</a>> wrote:<br>
</div><div class="im">> It could be shortened into:<br>
> sentence.split(' ').sort_by{ |a| a[1] }.join ' '<br>
<br>
</div>* If the parameter is unspecified, the default behaviour for split is<br>
to split on " ".[1]<br>
<br>
* String#join is aliased to String#*<br>
<br>
Thus, we can write it even shorter as:<br>
<br>
sentence.split.sort_by{ |a| a[1] } * " "<br>
<br>
1. This is due to the fact that the default is $;, which defaults to<br>
nil, which means that you can use $; instead of nil to save a byte if<br>
you need nil anywhere.<br>
<font color="#888888"><br>
Paul.<br>
</font><div><div></div><div class="h5">_______________________________________________<br>
Chat mailing list<br>
<a href="mailto:Chat@lists.lrug.org">Chat@lists.lrug.org</a><br>
<a href="http://lists.lrug.org/listinfo.cgi/chat-lrug.org" target="_blank">http://lists.lrug.org/listinfo.cgi/chat-lrug.org</a><br>
</div></div></blockquote></div><br></div>