Ролевая авторизация для AWS Cognito

 re.sub(r'(?:_a)?\.([^.]*)$', r'_suff.\1', "long.file.name.jpg")

?: запускает группу без соответствия ( SO answer ), поэтому (?:_a) соответствует _a, но не перечисляет его, следующий вопросительный знак делает его необязательным.

Итак, по-английски, это говорит, что конец ., следующий за (или не), шаблон _a

Другой способ сделать это - использовать lookbehind ( см. здесь ). Упомя все это, потому что они очень полезны, но я не знал о них за 15 лет работы с REs

0
задан Neil 19 March 2019 в 06:04
поделиться