Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

Select Case

式の値によって、文のグループの内 1 つを実行します。

Synopsis

Select Case testexpression
    [Case expressionlist-n
        [statements-n]] . . .
    [Case Else elsestatements]
End Select

引数

Select Case 文の構文は、以下の部分で構成されています。

testexpression 任意の数値式または文字列式。
expressionlist-n Case を記述する場合は必要。単独または複数の式の区切られたリスト。
statements-n testexpressionexpressionlist-n のいずれかと一致している場合に実行される単独、または複数の文。
elsestatements testexpression が Case 節のいずれとも一致しない場合に実行する単独、または複数の文。Case Else 節と一連の elsestatements 節は 1 つだけ指定できます。

概要

testexpression が Case expressionlist 式のいずれかと一致する場合、その Case 節に続く文は最長でその次の Case 節までに実行されるか、または最終節の End Select までに実行されます。制御は、その後 End Select に続く文に渡されます。testexpression が 1 つ以上の Case 節の expressionlist 式と一致する場合、最初に一致した Case 節の文のみが実行されます。

他の Case セレクションで、testexpression と expressionlist が一致しない場合のために、Case Else 節を使用して elsestatements を実行することを指定します。必須ではありませんが、予期しない testexpression 値に対処するためにも Select Case ブロックに Case Else 文があると便利です。Case expressionlist が testexpression と一致せず、Case Else 文が存在しない場合は、End Select の続く文で実行が継続されます。

Select Case 文は入れ子にできます。入れ子になった Select Case 文には、それぞれ一致する End Select 文が必要です。

以下の例は、Select Case 文の使用法を示しています。

Dim Color, MyVar
Sub ChangeBackground (Color)
  MyVar = lcase (Color)
     Select Case MyVar
           Case "red"    document.bgColor = "red"
           Case "green"  document.bgColor = "green"
           Case "blue","azure"   document.bgColor = "blue"
           Case Else     Print "pick another color"
     End Select
End Sub

関連項目

FeedbackOpens in a new tab