既然你只是想刪除括號內我建議使用兩個replace()
而不是regex()
:
In [9]: s = '(1) W00001 + (0.5) Q00003 <=> (1.7227) U00002 + (4) X21717'
In [10]: s.replace('(', '').replace(')', '')
Out[10]: '1 W00001 + 0.5 Q00003 <=> 1.7227 U00002 + 4 X21717'
或者,如果你正在使用Python 2.x的作爲更有效的方法使用str.translate()
方法:
In [9]: s = '(1) W00001 + (0.5) Q00003 <=> (1.7227) U00002 + (4) X21717'
In [10]: s.translate(None, '()')
Out[10]: '1 W00001 + 0.5 Q00003 <=> 1.7227 U00002 + 4 X21717'
在Python 3.x都有:
In [18]: import string
In [19]: s = '(1) W00001 + (0.5) Q00003 <=> (1.7227) U00002 + (4) X21717'
In [20]: s.translate(string.maketrans('', ''), '()')
Out[20]: '1 W00001 + 0.5 Q00003 <=> 1.7227 U00002 + 4 X21717'
非常感謝大家的幫助。好的解決方案問題現在解決了。 – user27976