擅长:python、mysql、java
<p>试试这个:</p>
<pre><code>clean = re.sub('[\0\200-\377]', '', dirty)
</code></pre>
<p>其思想是匹配每个NUL或“high ASCII”字符(即0和那些不适合7位的字符)并删除它们。可以在找到字符时添加更多字符,如ASCII ESC或BEL。</p>
<p>或者这个:</p>
<pre><code>clean = re.sub('[^\040-\176]', '', dirty)
</code></pre>
<p>其思想是只允许有限范围的“可打印ASCII”,但请注意,这也会删除换行符。如果要保留换行符或制表符等,只需将它们添加到括号中。</p>