2007/08/31
PowerShellのswitchステートメントを使ってVBのSelect Caseステートメント風の動作をさせてみる
VBやVBScriptだと、条件分岐させるSelect Caseステートメントで条件Case節に単数あるいは複数の条件を書けます。こんな感じ。
For a=1 To 12 Select Case a Case 6 MsgBox a & "は6ですよー" Case 5,7 MsgBox a & "は5か7ですよー" End Select Next
また、VBScriptではなぜか使えませんがIsとかToも使えます。
For a=1 To 12 Select Case a Case Is > 10 MsgBox a & "は10よりおおきいですよー" Case 1 To 3 MsgBox a & "は1から3ですよー" End Select Next
PowerShellでこの辺と等価なコードを書くとこんなかんじでしょうか。配列も渡せるところも注目。
$a=1..12 switch($a){ 6 {"$_ は6ですよー"} {5,7 -contains $_} {"$_ は5か7ですよー"} {$_ -gt 10} {"$_ は10よりおおきいですよー"} {1 -le $_ -and $_ -le 3} {"$_ は1から3ですよー"} }
結果
1 は1から3ですよー 2 は1から3ですよー 3 は1から3ですよー 5 は5か7ですよー 6 は6ですよー 7 は5か7ですよー 11 は10よりおおきいですよー 12 は10よりおおきいですよー元記事:http://blogs.wankuma.com/mutaguchi/archive/2007/08/31/93060.aspx
プライバシーポリシー