import re
data = """
12 September, 2016
September 12, 2016
2016 September, 12
September 17, 2012
17 October, 2015
"""
rgx = re.compile(r'(?P<day>[\d]{2})(?:\s|,|\?|$)|(?P<month>[a-zA-Z]+)|(?P<year>[\d]{4})')
day = ""
month = ""
year = ""
for l in rgx.finditer(data):
if(l.group("day")):
day = l.group("day")
elif(l.group("month")):
month = l.group("month")
elif(l.group("year")):
year = l.group("year")
if(day != "" and month != "" and year != ""):
print "{0} {1} {2}".format(day, month, year)
day = ""
month = ""
year = ""
aW1wb3J0IHJlCgpkYXRhID0gIiIiCjEyIFNlcHRlbWJlciwgMjAxNgpTZXB0ZW1iZXIgMTIsIDIwMTYKMjAxNiBTZXB0ZW1iZXIsIDEyClNlcHRlbWJlciAxNywgMjAxMgoxNyBPY3RvYmVyLCAyMDE1CiIiIgoKcmd4ID0gcmUuY29tcGlsZShyJyg/UDxkYXk+W1xkXXsyfSkoPzpcc3wsfFw/fCQpfCg/UDxtb250aD5bYS16QS1aXSspfCg/UDx5ZWFyPltcZF17NH0pJykKCmRheSA9ICIiCm1vbnRoID0gIiIKeWVhciA9ICIiCgpmb3IgbCBpbiByZ3guZmluZGl0ZXIoZGF0YSk6CiAgICAgICAgaWYobC5ncm91cCgiZGF5IikpOgogICAgICAgICAgICAgICAgZGF5ID0gbC5ncm91cCgiZGF5IikKICAgICAgICBlbGlmKGwuZ3JvdXAoIm1vbnRoIikpOgogICAgICAgICAgICAgICAgbW9udGggPSBsLmdyb3VwKCJtb250aCIpCiAgICAgICAgZWxpZihsLmdyb3VwKCJ5ZWFyIikpOgogICAgICAgICAgICAgICAgeWVhciA9IGwuZ3JvdXAoInllYXIiKQoKICAgICAgICBpZihkYXkgIT0gIiIgYW5kIG1vbnRoICE9ICIiIGFuZCB5ZWFyICE9ICIiKToKICAgICAgICAgICAgICAgIHByaW50ICJ7MH0gezF9IHsyfSIuZm9ybWF0KGRheSwgbW9udGgsIHllYXIpCiAgICAgICAgICAgICAgICBkYXkgPSAiIgogICAgICAgICAgICAgICAgbW9udGggPSAiIgogICAgICAgICAgICAgICAgeWVhciA9ICIi