import re
text = "23rd South 4th St."
match = re.match(r'(?P<number>\d+)(?:th|[rn]d|st)?\s+(?P<street_name>.*?)\s+(?P<street_type>\S+)$', text)
if match:
print(match.groupdict())
aW1wb3J0IHJlCnRleHQgPSAiMjNyZCBTb3V0aCA0dGggU3QuIgptYXRjaCA9IHJlLm1hdGNoKHInKD9QPG51bWJlcj5cZCspKD86dGh8W3JuXWR8c3QpP1xzKyg/UDxzdHJlZXRfbmFtZT4uKj8pXHMrKD9QPHN0cmVldF90eXBlPlxTKykkJywgdGV4dCkKaWYgbWF0Y2g6CiAgcHJpbnQobWF0Y2guZ3JvdXBkaWN0KCkp