Используя последние 3 слова, нет необходимости в регулярных выражениях (используя модуль time
):
>>> import time
>>> a="Some Random text of undetermined length Jan 28, 1986"
>>> datetuple = a.rsplit(" ",3)[-3:]
>>> datetuple
['Jan', '28,', '1986']
>>> time.strptime(' '.join(datetuple),"%b %d, %Y")
time.struct_time(tm_year=1986, tm_mon=1, tm_mday=28, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=1, tm_yday=28, tm_isdst=-1)
>>>
Использование модуля datetime
:
>>> from datetime import datetime
>>> datetime.strptime(" ".join(datetuple), "%b %d, %Y")
datetime.datetime(1986, 1, 28, 0, 0)
>>>