import re
list1 = ['apple', 'orange']
text = 'the books are good apple34'
word = re.sub(rf"(?:{'|'.join(map(re.escape, list1))})\d+", 'ball', text)
print(word)
word = re.sub(rf"\b(?:{'|'.join(map(re.escape, list1))})\d+\b", 'ball', text)
print(word)
aW1wb3J0IHJlCmxpc3QxID0gWydhcHBsZScsICdvcmFuZ2UnXQp0ZXh0ID0gJ3RoZSBib29rcyBhcmUgZ29vZCBhcHBsZTM0Jwp3b3JkID0gcmUuc3ViKHJmIig/OnsnfCcuam9pbihtYXAocmUuZXNjYXBlLCBsaXN0MSkpfSlcZCsiLCAnYmFsbCcsIHRleHQpCnByaW50KHdvcmQpCndvcmQgPSByZS5zdWIocmYiXGIoPzp7J3wnLmpvaW4obWFwKHJlLmVzY2FwZSwgbGlzdDEpKX0pXGQrXGIiLCAnYmFsbCcsIHRleHQpCnByaW50KHdvcmQpCg==