import re
s = "i'm sorry, sir, but this is a 'gluten-free' restaurant. we don't serve bread."
print( re.sub(r"(?:(?!\b['‘’]\b)[\W_])+", ' ', s).strip() )
aW1wb3J0IHJlCnMgPSAiaSdtIHNvcnJ5LCBzaXIsIGJ1dCB0aGlzIGlzIGEgJ2dsdXRlbi1mcmVlJyByZXN0YXVyYW50LiB3ZSBkb24ndCBzZXJ2ZSBicmVhZC4iCnByaW50KCByZS5zdWIociIoPzooPyFcYlsn4oCY4oCZXVxiKVtcV19dKSsiLCAnICcsIHMpLnN0cmlwKCkgKQ==