无忧启动论坛

标题: 转帖-[CMD]理解变量字符的截取功能 [打印本页]

作者: ccwan    时间: 2007-2-4 08:48
标题: 转帖-[CMD]理解变量字符的截取功能
看到鹤冲天兄提问set ii=%ii:~0,1% 的意思,意识到很多人对于变量的字符截取不了解,所以想起中国dos联盟里的相关帖子,特转帖过来,以飨同好。

单开一贴,一来是为挣点积分,二来那个帖子太长了,不便于大家阅读。
代码作者:lxmxn



  • ::code by lxmxn @ cn-dos.net .
  • ::目的:帮助新手们更好的理解变量字符截取功能.
  • ::Date 2006-12-16 .
  • ::说明:有的变量截取之后值为空,这是正常的.
  • @echo off&setlocal EnableDelayedexpansion
  • ::设置变量var的值:
  • set var=0123456789ABCDEF
  • call :begin
  • for /l %%a in (1,3,15) do (
  •     for /l %%b in (1,4,15) do (
  •         call :printf %%a %%b
  •     )
  • )
  • call :begin
  • for /l %%a in (1,4,15) do (
  •     for /l %%b in (-1,-3,-15) do (
  •         call :printf  %%a %%b
  •     )
  • )
  • call :begin
  • for /l %%a in (-2,-3,-15) do (
  •     for /l %%b in (1,4,15) do (
  •         call :printf  %%a %%b
  •     )
  • )
  • call :begin
  • for /l %%a in (-1,-4,-15) do (
  •     for /l %%b in (-2,-3,-15) do (
  •         call :printf  %%a %%b
  •     )
  • )
  • pause
  • endlocal&cls&echo.
  • echo 演示结束了,任意键退出……
  • pause>nul
  • goto :eof
  • ::输出结果:
  • :printf
  •     echo %%var:~%1,%2%%        截取之后的字符为:        !var:~%1,%2!
  •     goto :eof
  • ::清理屏幕:
  • :begin
  •     echo\&pause&cls&echo.
  •     echo               变量var的值为:          %var%
  •     echo.
  •     goto :eof
        ccwan发表于:  2007-02-04  08:47


为了格式的工整,特附上附件

[ 本帖最后由 ccwan 于 2007-2-4 08:53 AM 编辑 ]

Getstr.rar

599 Bytes, 下载次数: 137, 下载积分: 无忧币 -2


作者: 鹤冲天    时间: 2007-2-4 10:28
太帅了!!这样理解变量字符的截取功能就方便多了!!
感谢楼主!感谢代码作者!!
谢谢,谢谢你们!!
作者: lovelyxzq    时间: 2007-2-4 11:15
先感谢一下、请问这个有什么用?
作者: qingfushuan    时间: 2007-2-4 11:30
标题: 先谢再下
先谢再下
作者: xsjlai88    时间: 2007-2-5 00:34
好东东!谢谢无私分享!版主辛苦了!




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3