created: 20140410103123179 modified: 20210830010231559 tags: Filters title: Filter Operators type: text/vnd.tiddlywiki \define .operator-rows(filter) <$list filter="$filter$"> <$link>{{!!caption}} {{!!op-purpose}} <$list filter="[all[current]tag[Common Operators]]">✓ <$list filter="[all[current]tag[Negatable Operators]]">`!` \end \define .group-heading(_) $_$ \end A <<.def "filter operator">> is a predefined keyword attached to an individual [[step|Filter Step]] of a [[filter|Filters]]. It defines the particular action of that step. ''Important:'' Each first [[step|Filter Step]] of a [[filter run|Filter Run]] not given any input titles receives the output of <$link to="all Operator">[all[tiddlers]] as its input. The following table lists all core operators, the most common ones marked ✓. The last column indicates whether an operator allows ''negation'' using the <$link to="Filter Step">! prefix. For specifics as to each operator's negated output please refer to its documentation. <<.operator-rows "[tag[Filter Operators]!tag[Order Operators]!tag[Mathematics Operators]!tag[String Operators]!tag[Tag Operators]!tag[Special Operators]sort[]]">> <<.group-heading "Order Operators">> <<.operator-rows "[tag[Filter Operators]tag[Order Operators]!tag[Listops Operators]!tag[Mathematics Operators]!tag[String Operators]!tag[Tag Operators]!tag[Special Operators]sort[]]">> <<.group-heading "Listops Operators">> <<.operator-rows "[tag[Filter Operators]tag[Listops Operators]tag[Order Operators]!tag[Mathematics Operators]!tag[String Operators]!tag[Tag Operators]!tag[Special Operators]sort[]]">> <<.group-heading "String Operators">> <<.operator-rows "[tag[Filter Operators]!tag[Order Operators]tag[String Operators]!tag[Tag Operators]!tag[Special Operators]sort[]]">> <<.group-heading "Mathematics Operators">> <<.operator-rows "[tag[Filter Operators]!tag[Order Operators]tag[Mathematics Operators]!tag[Tag Operators]!tag[Special Operators]sort[]]">> <<.group-heading "Tag Operators">> <<.operator-rows "[tag[Filter Operators]!tag[Order Operators]!tag[Mathematics Operators]!tag[String Operators]tag[Tag Operators]!tag[Special Operators]sort[]]">> <<.group-heading "Special Operators">> <<.operator-rows "[tag[Filter Operators]!tag[Order Operators]!tag[Mathematics Operators]!tag[String Operators]!tag[Tag Operators]tag[Special Operators]sort[]]">>
Operator Purpose `!`
A typical step is written as `[operator[parameter]]`, although not all of the operators need a [[parameter|Filter Parameter]]. Most steps process the [[selection of titles|Title Selection]] that are supplied as their input, but a few [[construct an entirely new selection|Selection Constructors]] instead. For the exact rules, see [[Filter Syntax]].