« バッチファイルで文字列の長さチェック | トップページ | フォルダの表示モードを切り替える。 »

2009年5月10日 (日)

バッチファイルで英大文字チェック

文字が英大文字かどうか、をチェックするには、どうするか?

setlocal enabledelayedexpansion
set x=A
set y=a
set z=ABCDEFGHIJKLMNOPQRSTUVWXYZ
if not %z%==!z:%x%=! echo %x%は英文字ですが、大文字か小文字かは不明です。
if not %z%==!z:%y%=! echo %y%は英文字ですが、大文字か小文字かは不明です。

if not %z%==!z:%x%=! if %z%==!z:%x%=%x%! echo %x%は英大文字です。
if not %z%==!z:%y%=! if %z%==!z:%y%=%y%! echo %y%は英大文字です。

setの置換は大文字小文字を区別しません。
ifの比較は大文字小文字を区別します。

« バッチファイルで文字列の長さチェック | トップページ | フォルダの表示モードを切り替える。 »