^([^0-9]*)([0-9]) searches for the beginning of the line, followed by any number of non-digits (remembering all those non-digits) followed by a digit (remembering this digit).
\1 is the first remembered part (i.e. the non-digits), \t the tab character, \2 the second remembered part (i.e. the digit)
One issue with this solution (I came up with something similar) is that it retains a space before the inserted tab character. I wasn't sure if kongharald just wanted a tab inserted or the space before the digit replaced.