Sean's Personal Code Samples And References
Switch

Handle multiple if statements

Syntax (brief)

      Switch ($item)
      {
       value { expression }
       value { expression }
      }

Syntax (full)

      Switch [-regex|-wildcard|-exact][-casesensitive] ( pipeline )
      { 
        "string"|number|variable|{ expression } { statementlist }
        default { statementlist } 
      }

      Switch [-regex|-wildcard|-exact][-casesensitive] -file filename
      { 
        "string"|number|variable|{ expression } { statementlist }
        default { statementlist } 
      }
Key

   -regex       Treat the match clause, if a string, as a Regex
   -wildcard    Treat the match clause, if a string, as a wildcard string
   -exact	     Match strings exactly (disable wildcards)
 -casesensitive Modify the match clause, if a string, to be case sensitive
   -file        Take input from a file (or representative)
The keyword "break" indicates that no more processing will occur and the switch statement will exit.

The keyword "continue" indicates that no processing will continue against the current token and the next token in the conditional will be evaluated. If no tokens are available, the switch statement will exit.

If pipeline results in an array, each element of the array will be evaluated in ascending offset order (starting at 0). At least one element must be present that meets at least one condition or an error will result.

Examples

Compare a string, this is effectively just a string of IF statements:

 PS> $my_variable = "ss64"
 PS> switch ($my_variable){
     ss61 {"First result"; break}
     ss62 {"Second"; break}
     ss63 {"Third"; break}
     ss64 {"Fourth"; break}
     ss65 {"Fifth"; break}
     default {"Something else happened"; break}
     }
The break at the end of each condition tells the switch to stop looking further, if you omit this, the switch statement can match more than one clause and perform more than one action.
Sean Marcellus
There are 10 kinds of people e in this world, those who understand binary and those who don’t.