擅长:python、mysql、java
<p>您可以使用以下模式,注意您需要用<code>\</code>转义<code>^</code>。相反,您可以使用grouping,如果您希望python将您的模式解释为regex格式,您还需要在模式之前使用<code>r</code>:</p>
<pre><code>>>> s="""%na^me%
... %name^%
... %^name%"""
>>> l= re.findall(r'%([a-zA-Z\^]+)%',s)
['na^me', 'name^', '^name']
</code></pre>
<p>对于替换字符串,可以使用如下字典,并用<code>str.replace()</code>替换模式:</p>
<pre><code>>>> d={'^name':'Data','name^':'DATA','na^me':'DAta'}
>>> for i in l :
... s=s.replace(i,d[i])
...
>>> s
'%DAta%\n%DATA%\n%Data%'
</code></pre>