title: Why is the return value of an empty python regexp search a match?
body: <p>When passing an empty string to a regular expression object, the result of a search is a match object an not None. Should it be None since there is nothing to match?</p>
  
  <pre><code>import re
  
  m = re.search("", "some text")
  if m is None:
      print "Returned None"
  else:
      print "Return a match"
  </code></pre>
  
  <p>Incidentally, using the special symbols <code>^</code> and <code>$</code> yield the same result.</p>