import re
p = re.compile(ur'''(\d|\d{2}|\d{4}) # match 1 didget, or two didgets, or four didgets
(\s|-|\.|\/) # match either a space or a dash or a period or a backslash
(\d{2}|\d) # match either 2 digets or one
(\s|-|\.\/) # match either a space or a dash or a period or a backslash
(\d{4}|\d{2}) # match either 4 or 2 didgets.''', re.VERBOSE)
test_str = u"12/25/0000, 10.21.1955, 10-21-1985 6-5-1995 2004/2/21 5/25/2111 4999.2.21 "
re.search(p, test_str)
print(p.findall(test_str))
aW1wb3J0IHJlCnAgPSByZS5jb21waWxlKHVyJycnKFxkfFxkezJ9fFxkezR9KSAgIyBtYXRjaCAxIGRpZGdldCwgb3IgdHdvIGRpZGdldHMsIG9yIGZvdXIgZGlkZ2V0cwogICAgKFxzfC18XC58XC8pICMgbWF0Y2ggZWl0aGVyIGEgc3BhY2Ugb3IgYSBkYXNoIG9yIGEgcGVyaW9kIG9yIGEgYmFja3NsYXNoCiAgICAoXGR7Mn18XGQpICMgbWF0Y2ggZWl0aGVyIDIgZGlnZXRzIG9yIG9uZQogICAgKFxzfC18XC5cLykgIyBtYXRjaCBlaXRoZXIgYSBzcGFjZSBvciBhIGRhc2ggb3IgYSBwZXJpb2Qgb3IgYSBiYWNrc2xhc2gKICAgIChcZHs0fXxcZHsyfSkgIyBtYXRjaCBlaXRoZXIgNCBvciAyIGRpZGdldHMuJycnLCByZS5WRVJCT1NFKQp0ZXN0X3N0ciA9IHUiMTIvMjUvMDAwMCwgMTAuMjEuMTk1NSwgMTAtMjEtMTk4NSA2LTUtMTk5NSAyMDA0LzIvMjEgNS8yNS8yMTExIDQ5OTkuMi4yMSAiCiAgICAgCnJlLnNlYXJjaChwLCB0ZXN0X3N0cikKcHJpbnQocC5maW5kYWxsKHRlc3Rfc3RyKSk=
[(u'10', u'-', u'21', u'-', u'1985'), (u'6', u'-', u'5', u'-', u'1995')]