как отделить строковые данные от числовых?

у меня есть несколько выражений:

rmd1012
tod12
ng999der
yd1028a

Как можно отделить от этих выражений строковые данные идущие до чисел, но с сохранением букв идущих после чисел, что бы получилось следующее:

1012
12
999der
1028а

Ответы (3 шт):

Автор решения: dimchich

Можно взять простое регулярное выражение, которое будет брать все цифры и все буквы после цифр:

\d+\w*
→ Ссылка
Автор решения: Strashilka

Не претендую на самый идеальный вариант, но я бы так перебрал:

tuple_digital=('0', '1', '2', '3', '4', '5', '6', '7', '8', '9')
list_words=['rmd1012', 'tod12', 'ng999der', 'yd1028a']

new_list_words=[]
for x in list_words:
    for y in x:
        if y not in tuple_digital:
            x=x.replace(y, '', 1)
        else:
            new_list_words.append(x)
            break

#Дальше просто перебор ответов
for x in new_list_words:
    print(x)

Зато работает не только с цифрами, но и с любыми указанными символами.

→ Ссылка
Автор решения: CameL

Если без регулярок то проверяйте методом isaplha является ли символ буквенным, и если нет, то меняйте флаг

text = """rmd1012
tod12
ng999der
yd1028a"""

for i in text.split('\n'):
    flag = False
    res = ""
    for sumbol in i:
        if not sumbol.isalpha():
            flag = True
        if flag:
            res += sumbol
    print(res) 
→ Ссылка