Статья Автор: Деникина Н.В., Деникин А.В.

6. Числа в строке

Паттерн \d+ — одна или более цифр (число).

s = "abc123def4567xyz89"
re.findall(r'\d+', s)  # ['123', '4567', '89']

# Преобразуем в числа:
nums = [int(x) for x in re.findall(r'\d+', s)]  # [123, 4567, 89]

Числа с условиями:

# Чётные (последняя цифра чётная)
s = "12 34 57 89 100"
nums = [int(x) for x in re.findall(r'\d+', s)]
even = [n for n in nums if n % 2 == 0]  # [12, 34, 100]

# Числа без ведущих нулей
re.findall(r'\b[1-9]\d*\b|\b0\b', s)  # корректные числа
Печать