import re
text = 'MIKE an entry for mike WILL and here is wills text DAVID and this belongs to david'
subs = ['MIKE','WILL','TOM','DAVID']
res = re.findall(r'({0})\s*(.*?)(?=\s*(?:{0}|$))'.format("|".join(subs)), text)
print(res)
aW1wb3J0IHJlCnRleHQgPSAnTUlLRSBhbiBlbnRyeSBmb3IgbWlrZSBXSUxMIGFuZCBoZXJlIGlzIHdpbGxzIHRleHQgREFWSUQgYW5kIHRoaXMgYmVsb25ncyB0byBkYXZpZCcKc3VicyA9IFsnTUlLRScsJ1dJTEwnLCdUT00nLCdEQVZJRCddCnJlcyA9IHJlLmZpbmRhbGwocicoezB9KVxzKiguKj8pKD89XHMqKD86ezB9fCQpKScuZm9ybWF0KCJ8Ii5qb2luKHN1YnMpKSwgdGV4dCkKcHJpbnQocmVzKQ==