def getNum(text):
numRegex = re.compile(r'((\s+|:|:)(\d{1,3})(,)?(\d{3})?(,)?(\d{3})?(\s+))')
mo = numRegex.findall(text)
moList = []
for x in range(len(mo)):
if mo[x][0][-1] !=',':
moList.append(mo[x][0].strip(' ').replace(':','').replace(':',''))
return moList
text ='NUm is 423,999 or 998 12:34,567 or 1234'
print(getNum(text))
根据题目写的一些记录,还可以优化