[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理怎样将变量倒过来?

我记得随风大哥以前好像是将变量里面的字符倒过来排列.
我试过了,但是不只为何,请教各位高手们用通俗方法讲解一下好吗

  1. @echo off
  2. ::开启变量延时,关于延时变量请参看本论坛相关文章
  3. setlocal enabledelayedexpansion
  4. set var=abcdefghijk
  5. set result=
  6. ::开启 /l 开关,有关for的用法请看本论坛相关教程
  7. for /l %%i in (0,1,255) do (
  8.   ::从var变量把字符一个一个取出,!var:~%%i,1!是指从第%%i个位置开始取长度为1的字串
  9.   set result=!var:~%%i,1!!result!
  10. )
  11. echo !result!
  12. pause>nul
复制代码

TOP

变量字符的截取,具体的搜索本论坛的教程
:
  1. @echo off
  2. set var=abcdefghijk
  3. echo %var%
  4. echo\
  5. :lis
  6. ::设变量num等于变量num加变量var的最后一位
  7. set num=%num%%var:~-1%
  8. ::舍弃变量var的最后一位
  9. set var=%var:~0,-1%
  10. ::判断变量var的值不为空就goto到lis
  11. if defined var goto lis
  12. echo %num%
  13. pause
复制代码
技术问题请到论坛发帖求助!

TOP

了解了,这样我就明白了,呵呵呵,就是把变量中最后一位的职传递给新的变量中的最后一位,然后
判断原有变量中是否还存在最后一位,如果没有就显示新变量,有的话就接着传递

TOP

返回列表