4.1 if 文

if 文は、以下の 4 種類の形式が使用できます。
  1. 1 行で if のみ

    if [条件] [コマンド]
  2. 1 行で if と else

    if [条件] [コマンド1] else [コマンド2]
  3. 複数行で if のみ

    if [条件] (
      [コマンド1]
      [コマンド2]
      ...........
    )
  4. 複数行で if と else

    if [条件] (
      [コマンドA1]
      [コマンドA2]
      ............
    ) else (
      [コマンドB1]
      [コマンドB2]
      ............
    )

if 文の後ろのコマンドは条件部分が真のときに実行され、 else の後ろは条件部分が偽のときに実行されます。 実行するコマンドが複数ある場合は 3. または 4. の形式を使いますが、 3., 4. の形式はコマンドが 1 つしかない場合でも使えます。

if 文の条件部分には、以下の形式が使えます (「」や [ ] は不要です)。

さらに、以上の条件の前に not をつけると いずれの場合も真偽が反転されますが、 C 言語のように複数の条件を AND (&&) や OR (||) で結ぶことはできません。

この条件の形式の 1 番目と 2 番目の形式の値の部分には文字列が使えますが、 文字列の代わりに %[変数名]% を置くこともできますし、 それを文字列中の部分文字列とすることもできます。 また、2 番目の形式では、両辺の値がどちらも整数値を表す文字列であれば 整数値として比較が行われます。 比較演算子はいずれも 3 文字の文字列で、

のいずれかが指定できます。

値が文字列ならば辞書式順序で比較され、 デフォルトではアルファベットの大文字と小文字は区別されますが13、 2 番目の比較演算子を用いた形式では if と条件の間に /i を置くと、 大文字と小文字を区別せずに比較します。

竹野茂治@新潟工科大学
2014年5月2日