title: Difference between re.search() and re.findall()
body: <p>The following code is very strange: </p>
  
  <pre><code> &gt;&gt;&gt; words = "4324324 blahblah"
   &gt;&gt;&gt; print re.findall(r'(\s)\w+', words)
   [' ']
   &gt;&gt;&gt; print re.search(r'(\s)\w+', words).group()
   blahblah
  </code></pre>
  
  <p>The <code>()</code> operator seems to behave poorly with findall. Why is this? I need it for a csv file.</p>
  
  <p>Edit for clarity: I want to display <code>blahblah</code> using findall.</p>
  
  <p>I discovered that <code>re.findall(r'\s(\w+)', words)</code> does what I want, but have no idea why findall treats groups in this way. </p>