import re
s = "1. First sentence. \n2. Second sentence. \n1. Another sentence. \n3. Third sentence."
l = re.findall(r'(?:^|\n)(([0-9]+)\.[\s\S]*?)(?=\n[0-9]+\.|\Z)', s)
curr_num = 0
result = []
for s,num in l:
if curr_num > int(num):
if not result:
result = ['']
result[-1] += s
else:
result.append(s)
curr_num = int(num)
print(result)
aW1wb3J0IHJlCnMgPSAiMS4gRmlyc3Qgc2VudGVuY2UuIFxuMi4gU2Vjb25kIHNlbnRlbmNlLiBcbjEuIEFub3RoZXIgc2VudGVuY2UuIFxuMy4gVGhpcmQgc2VudGVuY2UuIgpsID0gcmUuZmluZGFsbChyJyg/Ol58XG4pKChbMC05XSspXC5bXHNcU10qPykoPz1cblswLTldK1wufFxaKScsIHMpCmN1cnJfbnVtID0gMApyZXN1bHQgPSBbXQpmb3IgcyxudW0gaW4gbDoKCWlmIGN1cnJfbnVtID4gaW50KG51bSk6CgkJaWYgbm90IHJlc3VsdDoKCQkJcmVzdWx0ID0gWycnXQoJCXJlc3VsdFstMV0gKz0gcwoJZWxzZToKCQlyZXN1bHQuYXBwZW5kKHMpIAoJY3Vycl9udW0gPSBpbnQobnVtKQogICAgCnByaW50KHJlc3VsdCk=