Я занимаюсь разработкой проекта в Python, который нормализует все заданные строки в чистый текст. Проблема в том, что мои данные вводятся нерегулярно и некоторые числа отформатированы (значения, цены), а другие не отформатированы (годы, возраст). Я пытаюсь собрать их все, не обращая особого внимания на то, отформатирован ли он или нет с помощью следующего сценария.
def get_nums(line):
formatted_nums = re.compile('\d{1,3}[,.]\d{1,3}')
nums = re.compile('\d+')
formatted_nums_data = rm_repetitions(formatted_nums.findall(line))
nums_data = rm_repetitions(nums.findall(line))
return formatted_nums_data + nums_data
Однако, учитывая предложение: Rolls-Royce Motor Cars In c , сказал, что ожидает, что его продажи в США останутся стабильными на уровне около 1200 автомобилей в 1990 году. Он выдает мне следующие результаты:
[u'1,200', u'1', u'200', u'1990']
Тем не менее, желаемый результат:
[u'1,200', u'1990']
Есть ли решение для такого рода проблем? Заранее спасибо