I'm sure you can find smarter regexes that will do this, but I think you should stick with it findall().
Regular expressions are hard to read. Not only by others: let it be 10 days since you wrote one, and it will be difficult for you to read too. This makes their support difficult.
If performance is critical, it is always best to minimize the work performed by regular expressions. This line ...
re.findall(r"\d+", test)[-1]
... is clean, concise and immediately obvious.