title: Avoiding inner group in regex return
body: <p>I'm working on an html extraction, and I'm using regular expressions in minor duties. I'm using python <code>re</code> module, and I'd like to avoid inner groups to be returned when defining the group is necessary -- or, at least, when it seems to be needed.</p>
  
  <p>As an example, consider the string:</p>
  
  <pre><code>line = u" 07.49 (43 votes) "
  </code></pre>
  
  <p>And the expression:</p>
  
  <pre><code>expr = lambda x: re.findall("(\d+(\.\d{1,2})?)\D*(\d+)", x)
  </code></pre>
  
  <p>The return of the application is:</p>
  
  <pre><code>expr(line)
  [(u'7.49', u'.49', u'43')]
  </code></pre>
  
  <p>And I'd like to have the following as result:</p>
  
  <pre><code>expr(line)
  [(u'7.49', u'43')]
  </code></pre>
  
  <p>But I need to define the inner group <code>(\.\d{1,2})?</code> in <code>"(\d+(\.\d{1,2})?)\D*(\d+)"</code>, as the decimal part of the number may not appear.</p>
  
  <p>Is there a way to avoid this <em>extra group</em>?</p>