It's now possible to use logical operators on patterns.
For example:
!/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.