UDM - if Statement - Comparison Operations
UDM - if Statement - Comparison Operations
In an if statement, a comparison consists of three parts:
- Left-hand value
- Comparator
- Right-hand value
The left-hand and right-hand values can be either:
- Variable reference
- Variable attribute
- Constant
Comparators
A comparator determines the type of comparison to be made between the left-hand and right-hand values.
There are six comparators:
EQ - Equal
The equal comparator, EQ, evaluates to true if both the left and right-hand values are equal to each other. If one or more of the values contains alpha characters (non-numeric), the comparison is case insensitive. That is, a word that is all lower case would be equal to the same word if it were all upper case (for example: dog would be equal to DOG).
The following are examples of if statements using the equal comparator, EQ:
if $(filename) EQ myfile.txt print msg="The name of the file is myfile.txt" end* if 8 EQ $(_lastrc) print msg="The last command resulted in an error" end if $(filename.exists) EQ yes print msg="The filename variable exists" end
NE - Not Equal
The not-equal comparator, NE, evaluates to true if the left-hand value is not the same as the right-hand value. As with the equal comparator, EQ, alpha character comparisons are case insensitive.
The following are examples of if statements using the not-equal comparator, NE:
if "C:\Program Files\Universal" NE $(mydir) print msg="This is not the Stonebranch application directory" end if 8 NE 0 print msg="This will always print as 8 is not equal to 0" end if $(filename.exists) NE no print msg="The filename variable exists" end
LT - Less Than
The less than comparator, LT, evaluates to true if the left-hand value is less than the right-hand value. The less than comparator performs a numeric comparison.
The following are examples of if statements using the less than comparator:
if 0 LT 8 print msg="0 is less than 8" end if $(_rc) LT 8 print msg="No errors have occurred" end if $(filename.length) LT 8 print msg="The length of the filename is less than 8" end
GT - Greater Than
The greater than comparator, GT, evaluates to true if the left-hand value is greater than the right-hand value. As with the less than comparator, LT, the comparison is between two numeric values, as shown in this example:
if 8 GT 0 print msg="8 is greater than 0" end
LE - Less Than or Equal
The less than or equal comparator, LE, is similar to the less than comparator, LT, except that it evaluates to true if the left-hand value is less than or equal to the right-hand value, as shown in these examples:
if 8 LE 8 print msg="8 is less than or equal to 8" end if $(filename.length) LE 8 print msg="The length of the filename is less than or equal to 8" end
GE - Greater Than or Equal
The greater than or equal comparator, GE, is similar to the greater than comparator, GT, except that it evaluates to true if the left-hand value is greater than or equal to the right-hand value, as shown in this example:
if $(filename.length) GE 9 print msg="The filename is longer than 8 characters" end