import re
s = "hello a world today b is sunny c day"
markers = "a b c".split()
pattern = r'\b(' + ' (?:\w+ )?(?:\w+ )?'.join(markers) + r')\b'
print(pattern)
text = re.sub(pattern, r'<b>\1</b>', s)
print(text)
print(re.sub(r'\b' + ' (?:\w+ )?(?:\w+ )?'.join(markers) + r'\b', r'<b>\g<0></b>', s))
aW1wb3J0IHJlCnMgPSAiaGVsbG8gYSB3b3JsZCB0b2RheSBiIGlzIHN1bm55IGMgZGF5IgptYXJrZXJzID0gImEgYiBjIi5zcGxpdCgpCnBhdHRlcm4gPSByJ1xiKCcgKyAnICg/Olx3KyApPyg/Olx3KyApPycuam9pbihtYXJrZXJzKSArIHInKVxiJwpwcmludChwYXR0ZXJuKQp0ZXh0ID0gcmUuc3ViKHBhdHRlcm4sIHInPGI+XDE8L2I+JywgcykKcHJpbnQodGV4dCkKcHJpbnQocmUuc3ViKHInXGInICsgJyAoPzpcdysgKT8oPzpcdysgKT8nLmpvaW4obWFya2VycykgKyByJ1xiJywgcic8Yj5cZzwwPjwvYj4nLCBzKSk=