Gatherer supports Regex. This search produces 27 results, including all of your example, but also some false positives.
The statement is intentionally broad so it shouldn't have false negatives, at the cost of more false positives.
Here is a screenshot of the search terms.
The " get " excludes "gets" and "target" results.
The "m/[.]*/-[1-9]+/" term is the regex, with the leading "m/" and trailing "/" being the signal to treat the enclosed term as regex.
Exclude "until end of turn" to only get permanent P/T modifiers.