Python /正则表达式 - 只在字符串末尾用模式替换

问题描述:

我需要替换字符串末尾的每个括号。我使用此代码:Python /正则表达式 - 只在字符串末尾用模式替换

a = '1 (FR) Product (IT, DE, ES)' 
b = re.sub(r' \((.*?)\)',r'', a) 

但是,这将取代我的字符串中的每个括号。如何让python只在模式位于字符串末尾才能替换它?

捕捉一切,但()之前和字符串标识符结束$

>>> import re 
>>> a = '1 (FR) Product (IT, DE, ES)' 
>>> re.sub(r'\(([^(]*\))$', '', a) 
'1 (FR) Product ' 

if a[-1] == ")" a = a[:-2] 将工作