|
字符串截取有一个格式:%a:~[m,[,n]]%
其中方括号表示可选,% 为变量标识符,a 为变量名,这部分必须要有。
:~ 可以当成是一固定格式,如果分开来理解,那么认为冒号用于分隔变量名和说明部分。
m 为偏移量,缺省值为 0。
n 为截取长度,缺省为全部。
测试代码:
- @echo off
- set a=123456789
- echo %a:~1,2%
- echo %a:~3,3%
- echo %a:~2,-3%
- echo %a:~,-2%
- echo %a:~3%
- echo %a:~-4,2%
- echo %a:~-4,-1%
- pause
复制代码
输出结果:
23
456
3456
1234567
456789
67
678
请按任意键继续. . .
当 m 为负数的时候,表示字串的末尾算起的偏移。当 n 为负数的时候,表示去掉后面的 n 个字符,即从后面截取。
再看一个用在 for 循环里用的例子:
- @echo off
- set disk=cdefghijklmnopqrstuvwxyz
- set k=1
- FOR /L %%i IN (0,1,23) DO call echo %%disk:~%%i,1%%
- pause
复制代码
在 for 里变量用的是两个 % 。
|
|