Instead of capturing the part you want to replace you can capture the parts you want to keep and then refer to them using a reference \1
to include them in the substituted string.
Try this instead:
output = re.sub(r'(<textarea.*>).*(</textarea>)', r'\1Bar\2', s)
Also, assuming this is HTML you should consider using an HTML parser for this task, for example Beautiful Soup.