...
Evaluates a set of conditions in turn, and returns the associated result for the first match.
Syntax
switch(
[condition1, result1],
[condition2, result2],
[
...
conditionN, resultN]
...
,
defaultResult
)
Argument | Type | Description |
---|---|---|
conditionN | Boolean | The condition to be checked. If it evaluates to true the corresponding result is returned and the switch statements ends. |
resultN | String | Result to be returned if the condition is True. |
defaultResult | String | If no previous condition results in has evaluated to True, this is the default result to be returned. |
Note |
---|
If only one clause is provided in the switch statement, it is treated as the default clause regardless of its condition. |
Examples
Simple
This example shows how attribute in.city, can be used to set a region value. If none of the codes are matched, "Unknown" is the default value returned.
Code Block |
---|
switch(
[in.city == "Cambridge", "South"],
[in.city == "Manchester", "North"],
"Unknown"
) |
Returns "South" if in.city = "Cambridge".
Combined
This example shows how attribute in.cli, holding a telephone number, can be compared to a number of start codes and resolved to a destination. If none of the codes are matched, "Elsewhere" is the default destination returned.
...
Returns "Cambridge" if in.cli = "01223456765".
Output to a variable
This example shows how attribute in.city, can be used to set an output variable with a region value. If none of the codes are matched, the output variable is set to "Unknown".
Code Block |
---|
switch( [in.city == "Cambridge", $output = "South"], [in.city == "Manchester", $output = "North"], $output = "Unknown" ) |
Returns the value set in the output variable. For example if in.city = "Cambridge", $output would be set to "South". This is a useful technique when combining a switch statement with other functions.