title: Weird behavior of re.sub with utf-8 strings
body: <p>Could anyone explain me this strange behavior? I would expect both replace methods to work or not to work at the same time. Is it just me or is there anyone who doesn't find this to be coherent?</p>
  
  <pre><code>&gt;&gt;&gt; u'è'.replace("\xe0","")
  Traceback (most recent call last):
    File "&lt;stdin&gt;", line 1, in &lt;module&gt;
  UnicodeDecodeError: 'ascii' codec can't decode byte 0xe0 in position 0: ordinal not in range(128)
  &gt;&gt;&gt; re.sub(u'è','\xe0','',flags=re.UNICODE)
  ''
  </code></pre>
  
  <p>(Please note that I'm not asking for an explanation of why u'è'.replace("\xe0","") raises an error!)</p>