bat截取字符串實例
代碼如下:
@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 %var:~n,k%
我們在這里對每個參數做個說明:"%var",即我們要從中要截取字符的字符串." ~ "取字
符標志符(我是這么理解的),"n" 我們將其理解為指針,"k"我們將其理解為偏移地址.(注
:指針和偏移地址都是從零開始數的)
我們還是用namejm版主的例子做下說明:
代碼如下:
@echo off
set str=123456789
rem 定義一個str字符串為123456789
echo 第一個字符為:%str:~0,1%
rem 指針為0,偏移地址為1,即從第0位開始,取1位
echo 頭兩個字符為:%str:~0,2%
rem 指針為0,偏移地址為2,即從第0位開始,取2位
echo 頭5個字符為:%str:~0,5%
rem 指針為0,偏移地址為5,即從第0位開始,取5位
新聞熱點
疑難解答