批处理字符截取

前言

介绍字符截取。

正文

set str=123456789
echo %str:~1,1%

得到的结果是什么?

得到的结果是2。

为什么会是2呢?

有两个参数,分别是1,另一个还是1。

第一个参数是偏移量,第二个是取值范围。

但是事实上没有这么简单:

set str=123456789
set var=%str:~-3%

得到的结果是789,为什么是789呢?

这个就是-3是从右偏移,然后偏移3个位置就是6。

如果第二个数不些的话,就是其之后的数据。

同理:

set str=123456789
set var=%str:~-5,4%

得到的就是5678。

那么如果第二个是负数呢?

set str=123456789
set var=%str:~0,-4%

那么这个是从0到最后一个数,但是除了最后4个数字,那么就是12345了。

练习:

通过变量截取把 “今日明月在” 变成 “明月今日在” 显示出来。

我的解答:

set str=今日明月在
set var=%str:~2,2%%str:~0,2%%str:~-1% 
posted @ 2020-05-02 13:14  敖毛毛  阅读(245)  评论(0编辑  收藏  举报