<br><br><div class="gmail_quote">On Thu, Apr 2, 2009 at 4:07 PM, Bradley A. Crittenden <span dir="ltr">&lt;<a href="mailto:brad.crittenden@gmail.com">brad.crittenden@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="im"><br>
On Apr 2, 2009, at 15:27 , Chris Calloway wrote:<br>
<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On 4/2/2009 2:15 PM, Jay Lyerly wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
For the python golfers.....<br>
a=&#39;foobar&#39;<br>
b=&#39;foobaz&#39;<br>
m=&#39;&#39;<br>
for (x,y) in zip(a,b):  m+= x * (x==y)<br>
m contains the matching substring.  That&#39;s as close to one line as I could get.  :)<br>
</blockquote>
<br>
Here it is in one line (synthesizing Jay and Chris Rossi&#39;s solution with a list comprehension:<br>
<br>
&gt;&gt;&gt; &quot;&quot;.join([(x*(x==y)) for (x,y) in zip(&#39;foobar&#39;,&#39;foobaz&#39;)])<br>
&#39;fooba&#39;<br>
&gt;&gt;&gt;<br>
</blockquote>
<br></div>
Not enough testing!<div class="im"><br>
<br>
&gt;&gt;&gt; &quot;&quot;.join([(x*(x==y)) for (x,y) in zip(&#39;foobar&#39;,&#39;foobaz&#39;)])<br>
&#39;fooba&#39;<br></div>
&gt;&gt;&gt; &quot;&quot;.join([(x*(x==y)) for (x,y) in zip(&#39;foobard&#39;,&#39;foobazd&#39;)])<br>
&#39;foobad&#39;<br>
<br>
<br>
</blockquote><div>Dang, my pronouncement was premature.  I think Jay&#39;s would behave similarly, too.  <br><br>Chris<br> <br></div></div><br>