Operators¶
The valid TCL operators are listed below, grouped in decreasing order
of precedence.
Operand  Description 

Unary minus, unary plus, bitwise NOT, logical NOT. None of these operators may be applied to string operands, and bitwise NOT may be applied only to integers. 
* / %  Multiply, divide, remainder. None of these operators may be applied to string operands, and remainder may be applied only to integers. The remainder will always have the same sign as the divisor and an absolute value smaller than the divisor. 
Add and subtract. Valid for any numeric operands.  
<< >>  Left and right shift. Valid for integer operands only. A right shift always propagates the sign bit. 
< > <= >=  Boolean less, greater, less than or equal, and greater than or equal. Each operator produces 1 if the condition is true, 0 otherwise. These operators may be applied to strings as well as numeric operands, in which case string comparison is used. 
== !=  Boolean equal and not equal. Each operator produces a zero/one result. Valid for all operand types. 
eq ne  Boolean string equal and string not equal. Each operator produces a zero/one result. The operand types are interpreted only as strings. 
&  Bitwise AND. Valid for integer operands only. 
^  Bitwise exclusive OR. Valid for integer operands only. 
  Bitwise OR. Valid for integer operands only. 
&&  Logical AND. Produces a 1 result if both operands are nonzero, 0 otherwise. Valid for boolean and numeric (integers or floatingpoint) operands only. 
  Logical OR. Produces a 0 result if both operands are zero, 1 otherwise. Valid for boolean and numeric (integers or floatingpoint) operands only. 
x?y:z  Ifthenelse, as in C. If x evaluates to nonzero, then the result is the value of y. Otherwise the result is the value of z. The x operand must have a boolean or numeric value. 
In addition to the TCL operators above, the following operators have
been added for use within iRules:
Operand  Description 
contains  Tests if one string contains another string 
ends_with  Tests if one string ends with another string 
equals  Tests if one string equals another string 
matches_glob  Implement glob style matching within a comparison 
matches_regex  Tests if one string matches a regular expression 
starts_with  Tests if one string starts_with another string 
switch  Evaluates one of several scripts, depending on a given value 
and  Performs a logical “and” comparison between two values 
not  Performs a logical “not” on a value 
or  Performs a logical “or” comparison between two values 
The BIGIP API Reference documentation contains communitycontributed content. F5 does not monitor or control community code contributions. We make no guarantees or warranties regarding the available code, and it may contain errors, defects, bugs, inaccuracies, or security vulnerabilities. Your access to and use of any code available in the BIGIP API reference guides is solely at your own risk.