置換(削除)機能を使う方法。空になったか、一部置換されたかどうかで判定する。
strcmp の命名は紛らわしいかも知れない…
%1: 文字列1 %2: 文字列2 0: 不一致 1: 部分一致 2: 完全一致 要 EnableDelayedExpansion :strcmp set s0=%1 set s1=%1 set s1=!s1:*%2=! if not defined s1 exit /b 2 if %s1% EQU %s0% exit /b 0 exit /b 1
呼び出し例:
@echo off setlocal EnableDelayedExpansion call :strcmp %~1 %~2 if ErrorLevel 2 (echo 2: 完全一致 ) else if ErrorLevel 1 (echo 1: 部分一致 ) else if ErrorLevel 0 echo 0: 不一致 endlocal exit /b
以前に書いたコードは間違いが有った m(_ _)m