It's now possible to use logical operators on patterns.
!/txt$/ : files whose name doesn't end in "txt"
carg|c/carg : files whose name or content has "carg"
(json|xml)&c/test : files containing "test" and whose name fuzzily contains either "json" or "xml"
The documentation contains other examples and precision.