title: re.findall behaves weird
body: <p>The source string is:</p>
  
  <pre><code># Python 3.4.3
  s = r'abc123d, hello 3.1415926, this is my book'
  </code></pre>
  
  <p>and here is my pattern:</p>
  
  <pre><code>pattern = r'-?[0-9]+(\\.[0-9]*)?|-?\\.[0-9]+'
  </code></pre>
  
  <p>however, <code>re.search</code> can give me correct result:</p>
  
  <pre><code>m = re.search(pattern, s)
  print(m)  # output: &lt;_sre.SRE_Match object; span=(3, 6), match='123'&gt;
  </code></pre>
  
  <p><code>re.findall</code> just dump out an empty list:</p>
  
  <pre><code>L = re.findall(pattern, s)
  print(L)  # output: ['', '', '']
  </code></pre>
  
  <p>why can't <code>re.findall</code> give me the expected list:</p>
  
  <pre><code>['123', '3.1415926']
  </code></pre>