バッチファイルのifで大文字小文字を区別しないで比較する方法

バッチファイル

Windowsのバッチファイルでは、条件分岐を行う際にif文を使用しますが、デフォルトでは大文字小文字を区別します。しかし、ユーザー入力や外部からのデータを扱う場合には、大文字小文字を無視したいシチュエーションが多々あります。

この記事では、if文の比較において、大文字小文字の違いを無視する方法を紹介します。

サンプルコード

ユーザからの入力がYesか、それ以外かを判定するバッチファイルです。

@echo off

rem ユーザーに入力を促す
echo YesかNoを選択してください(Yes/No)
set /p userResponse=

rem 入力を大文字小文字を無視して比較
if /I "%userResponse%"=="yes" (
    echo Yesが選択されました
) else (
    echo 入力された文字はYes以外です
)

pause

実行結果1:全部小文字…OK

YesかNoを選択してください(Yes/No)
yes
Yesが選択されました
続行するには何かキーを押してください . . .

実行結果2:全部大文字…OK

YesかNoを選択してください(Yes/No)
YES
Yesが選択されました
続行するには何かキーを押してください . . .

まとめ

この記事では、if文の比較において、大文字小文字の違いを無視する方法を紹介しました。if の /I オプションは便利なので、ぜひご活用ください。

タイトルとURLをコピーしました