s = '{any {possible} characters}{anything}'
r1 = string.gsub(s, '{[^{}]*}$', '')
print(r1)

r3 = string.gsub('{anything}{any {possible} characters}', '%b{}$', '')
print(r3)