If you have enough lines to offset the cost of compiling the regexes, something like the following should serve.
#!/usr/bin/env python
import re
if __name__ == "__main__":
lines = {' foo (bar) '}
parens_regex = re.compile(r'\(.*?\)') # Non-greedy
space_regex = re.compile(r'\s+')
for line in lines:
print 'Before: "%s"' % line
line_tmp = parens_regex.sub('', line) # Before space-regex so we also collapse space around parens
line_tmp = space_regex.sub(' ', line_tmp)
line_tmp = line_tmp.strip()
print 'After: "%s"' % line_tmp # Prints: "foo"
I guess it's questionable whether that's more elegant - probably not.
You already knew enough about regexes to make your parens regex non-greedy.
But maybe a future Stack Overflow reader doesn't. Or maybe they or you didn't know about compiling regexes...