Find a Quick Match Email Regular Expression
<pre><code>solution:[a-zA-Z0-9.!#$%&amp;'*+-/=?\^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)* is a good choice
</code></pre>

<p>I am using a regular expression like the below to match email addresses in a file:</p>

<pre><code>email = re.search('(\w+-*[.|\w]*)*@(\w+[.])*\w+',line)
</code></pre>

<p>When used on a file like the following, my regular expression works well:</p>

<pre><code>mlk407289715@163.com    huofenggib  wrong in get_gsid
mmmmmmmmmm776@163.com   rouni816161 wrong in get_gsid
</code></pre>

<p>But when I use it on a file like below, my regular expression runs unacceptably slowly:</p>

<pre><code>9b871484d3af90c89f375e3f3fb47c41e9ff22  mingyouv9gueishao@163.com
e9b845f2fd3b49d4de775cb87bcf29cc40b72529e   mlb331055662@163.com
</code></pre>

<p>And when I use the regular expression from <a href="http://www.regular-expressions.info/email.html" rel="nofollow">this website</a>, it still runs very slowly.</p>

<p>I need a solution and want to know what's wrong.</p>
