バッチファイルで文字列操作・比較

バッチを久々に本格的に触ったら、まったく覚えてなかったうえになかなか見つけられなかったのでメモ。
自分のパソコンにはpython入ってて、batなんてほとんど書かないので非常に疲れました。

set s=hogehoge
echo %s:~2,4%

これでgehoと表示されます。
要するに %変数名:~切り出し開始位置(0から),切り出す長さ% と。
切り出す長さは省略可能で、省略したら開始位置から最後まで。
開始位置をマイナスの値にすると、後ろから○文字目の指定になる。
で、starts-withとかends-withとかはこれを代用するしかないらしい。

if %s:~2,4% == geho goto fuga

てな具合に。


参考(こちらの方によると、置換とかもできるそうな)
http://uenomemo.blog31.fc2.com/blog-entry-205.html