import re

pattern = r"\b(\d+(?:-\d+)?)years\."
s = "1-2years. 3years. 10years."

res = [tuple(v.split('-')) for v in re.findall(pattern, s)]
print(res)