Pattern Matching

Symbol Meaning
name Select all Item(s) matching this name, anywhere in the hierarchy
* Select Everything
!pattern Exclude — removes matches of pattern from the result.
a, b OR / union — comma-separates multiple patterns
//* Selects Entire scene
$name / $* Select Collections only. Also matches collection instances (Empties with instance_type='COLLECTION') — matched by either the instancer's own name or the source collection's name.
#name / #* Select Mesh-type objects only
@name / @* Select Light-type objects only
%set A named set (defined via the Named Sets in N-panel)
name> The named item plus all its descendants, any depth (object parenting)
^name / ^* View layers
X.(001-005) Numeric range expansion — matches X.001 through X.005

Nesting (Experimental)

Symbol Function
obj/* Direct descendants of object obj — exactly one level down. The object itself is never included.
obj/*/* Grandchildren — each / segment is one hop; chain as many as needed.
obj//* All descendants of obj, any depth. Use deliberately on large hierarchies — it walks the entire subtree.
obj//pattern Descendants matching pattern at any depth (e.g. cube//*5 finds a cube5 however deeply nested — cube/*5 would not, since that's a direct-children-only check).
obj//#* / #obj//* A type symbol may prefix any segment of a path. Prefixing the leaf filters the results by type (rig//#* = mesh descendants of rig). Prefixing the root filters which roots qualify (#body//* = descendants of the mesh-typed object named body). Both can combine: #body//@* = light descendants of a mesh-typed body.