Sorry, Pasquale.
I just did a quick test on your posted sample and, of course, it worked but I didn't think about what would happen when you had lots of the stuff in a single document.
I'm away for the rest of the day - I'll think about how best to do it and come back tomorrow. The two-character combination is a bit of a problem.
One way, perhaps, would be to change ALL (apost space) to some otherwise unused character, say ? for this example, - then search for (\{[!\}?]{1,})?([!\{\}]{1,}\}) and replace all with \1'\2 till there are no more (with the loop) - then replace all ? with (apost space) again - to set back the ones outside braces.