compare select, compare pick
These two functions carry out a sequence of comparisons with comparison expressions provided and then return the corresponding value in the following parameter.
Indirect parameter passing is enabled for 'select by value'.
4, 6, 8, etc.
No. | Type | Description |
---|---|---|
1 input |
valid types | Value to compare The value provided in the 1st function parameter will be compared with the comparison expresssions in the following odd-numbered parameters. |
2 input |
boolean | Default Value Applicable to compare select: This is the default value to be returned if all comparisons specified in the following function parameters turned out false. |
Alt. 2 code |
expression :string |
Default Expression Applicable to compare pick: This is the default expression to be calculated if all comparisons in the following function parameters turned out false. |
3, 5, ... code |
comparison expression :string |
Values to compare with The value provided in the 1st function parameter will be compared with the comparison expressions provided in these odd-numbered
function parameters. Once a positive match (comparison returns true) has been found, then comparison will stop and the value from the next
function aparameter will be returned.
This parameter is a piece of code typically found on the right-hand side of a comparison with '=' or '<>'. Single values,
ranges (e.g. 3..5), multiple values separated by commas are supported. For text comparison, wildcards are supported if the
string is of type softquoted string.
|
4, 6, ... input |
boolean | Value to select Applicable to compare select: This value will be returned if a match with the previous parameter applies. |
Alt. 4, 6, ... code |
expression :string |
Expression to select Applicable to compare pick: This expression will be calculated and the value returned if a match with the previous parameter applies. Otherwise, the expression will not be calculated. |
Type | Description |
---|---|
all types | Selected value |
echo( "Demonstrate 'compare pick': 'Greater than 5' is only printed out when the value is needed");
for (i[] = 1, i[] <= 10, i[]++)
{
a[] = compare select( i[], Others, (2,5,7), "Is 2 or 3", >5, print("Greater than 5 ") );
echo( i[], ": ", a[] );
}
echo( new line, "Demonstrate 'compare pick': 'Greater than 5' is only printed out when the value is needed");
for (i[] = 1, i[] <= 10, i[]++)
{
a[] = compare pick ( i[], Others, (2,5,7), "Is 2 or 3", >5, print("Greater than 5 ") );
echo( i[], ": ", a[] );
}
Demonstrate 'compare pick': 'Greater than 5' is only printed out when the value is needed
Greater than 5 1: Others
Greater than 5 2: Is 2 or 3
Greater than 5 3: Others
Greater than 5 4: Others
Greater than 5 5: Is 2 or 3
Greater than 5 6: Greater than 5
Greater than 5 7: Is 2 or 3
Greater than 5 8: Greater than 5
Greater than 5 9: Greater than 5
Greater than 5 10: Greater than 5
Demonstrate 'compare pick': 'Greater than 5' is only printed out when the value is needed
1: Others
2: Is 2 or 3
3: Others
4: Others
5: Is 2 or 3
Greater than 5 6: Greater than 5
7: Is 2 or 3
Greater than 5 8: Greater than 5
Greater than 5 9: Greater than 5
Greater than 5 10: Greater than 5