批处理字符串偏移指针

@echo off
set str=123456789
echo 第一个字符为:%str:~0,1%
echo 头两个字符为:%str:~0,2%
echo 头5个字符为:%str:~0,5%
echo 去掉最后一个字符后的字符串为:%str:~0,-1%
echo 去掉最后3个字符后的字符串为:%str:~0,-3%
echo 第4个字符为:%str:~3,1%
echo 第4个及其之后的3个字符为:%str:~3,4%
echo 最后一个字符为:%str:~-1%
echo 最后一个字符为:%str:~-1,1%
echo 最后一个字符为:%str:~-1,2%
echo 倒数第4个字符为:%str:~-4,1%
echo 倒数第4个及其之后的字符为:%str:~-4%
echo 倒数第4个及其之后的1个字符为:%str:~-4,2%
echo 倒数第4个及其之后的2个字符为:%str:~-4,3%
pause

ECHO %STR:~指将偏移量的指针移到变量的哪个地方,从指针处取几个字符%

例: SET     VAR=ABCDEFG

   ECHO %VAR:~2,3%
   是指从偏移量0开始移动指针,指向第2个字符: 0,1,2(移动了3次),所以指向了字符: C
   而 %VAR:~2,这里的3% 是指:从指针指定的位置起要取几个字符?
   3,就是指要取3个,当然是从当前指针所指向的位置取3个连续的字符,就是: CDE

   只要数它们从哪里开始,就从0开始数,因为它们的偏移量是从0开始的。


   %VAR:~偏移量,要取几个%

摘自:http://hi.baidu.com/36235/blog/item/234e76cc3177d91700e9282d.html

虽然自已知道也用过,但就是怕忘,也抄习一下吧

原文地址:https://www.cnblogs.com/d9394/p/10611761.html