Ответ 1
Ответ:
re.sub(r'(foo)', r'\g<1>123', 'foobar')
Соответствующая выдержка из документов:
В дополнение к экранированию символов и обратные ссылки, как описано выше, \ g будет использовать подстроку сопоставляются группой с именем name, as определяемый синтаксисом (? P...). \ g использует соответствующий номер группы; Следовательно, \g < 2 > эквивалентно\2, но не является двусмысленным в замене, таком как \g < 2 > 0.\20 будет интерпретироваться как ссылка на группа 20, а не ссылка на группу 2 за которым следует буквальный символ "0". Обратная ссылка \g < 0 > заменяет вся подстрока, соответствующая RE.