HoldPattern
HoldPattern[expr] is equivalent to expr for pattern matching, but maintains expr in an unevaluated form.
Examples
Match unevaluated expressions:
Cases[{1 + 1, 2 + 2, Hold[3 + 3]}, HoldPattern[_ + _]]
(* {1 + 1, 2 + 2} - matches before evaluation *)Use in rules:
{1 + 1, 2 + 3} /. HoldPattern[a_ + b_] :> {a, b}Please visit the official Wolfram Language Reference for more details.