2016-12-05 5 views
0

Мне нужно заменить каждую скобку в конце строки. Я использую этот код:Python/Regex - Заменить по шаблону только в конце строки

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

Но это заменит каждую скобку в моей строке. Как сказать python заменить его только в том случае, если шаблон находится в конце строки?

ответ

2

Захват все, но ( до того ) и конец идентификатора строки $:

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

if a[-1] == ")" a = a[:-2] будет работать