Используя возможности регулярных выражений python3, возможно ли захватывать переменное количество блоков захвата, основываясь на количестве найденных повторений? например, в следующих строках поиска я хочу захватить все строки цифр с одним и тем же регулярным выражением.
поиск строки 1 (пытается захватить: 89, 45):
zzz89zzz45.mp3
строка поиска 2 (пытается захватить: 98, 67, 89, 45):
zzz98zzz67zzz89zzz45.mp3
строка поиска 3 (пытается захватить: 98, 67, 89, 45, 55, 111):
zzz98zzz67zzz89zzz45vdvd55lplp111.mp3
следующее регулярное выражение будет соответствовать всем повторениям, хотя все значения недоступны для последующего использования (фиксируется только 1-разрядная строка):
((\d+)\D*)*\.mp3$
другие 2 опции пишут разные регулярные выражения для каждого случая или используют findall (). Есть ли способ настроить вышеупомянутое регулярное выражение, чтобы захватить каждую цифровую строку для последующего использования с различным числом повторений, используя только средства регулярного выражения, или для того, чтобы сделать это в python3, вы вынуждены использовать findall ()?