Excerpt | ||
---|---|---|
| ||
switch(\[condition1, result1\],\[condition2, result2\],...,\[conditionN, resultN\],defaultResult) Evaluates a set of conditions in turn, and returns the associated result for the first match. |
Function: switch()
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 |
has evaluated to True, this is the |
result to be returned. |
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.
Code Block |
---|
switch( [startsWith(in.cli, "01223"), "Cambridge"], [startsWith(in.cli, "01604"), "Northampton"], "Elsewhere" ) |
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.