The City of Columbus 311 intake workflow receives expressions containing grouping symbols. Write a function that determines whether every parenthesis, bracket, and brace is correctly opened and closed in the proper order.
Ignore all characters that are not one of (, ), [, ], {, or }. An empty expression or an expression containing no delimiters is balanced.
Implement is_balanced(expression), which accepts a string and returns a boolean. Return True when all delimiters are properly matched and nested, and False otherwise.
def is_balanced(expression):