最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
bat批处理之字符串操作代码实现方法
时间:2022-06-24 14:33:54 编辑:袖梨 来源:一聚教程网
本篇文章小编给大家分享一下bat批处理之字符串操作代码实现方法,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
对于字符串的截取
set testStr=abcdefghijklmnopqrstuvwxyz0123456789 echo 原始字符串 %testStr% echo 提取前五个字符串:%testStr:~0,5% echo 提取最后五个字符串:%testStr:~-5% echo 提取第一个到倒数第六个字符串:%testStr:~0,-5% echo 提取五个字符串,从第四个字符开始:%testStr:~3,5%
字符串的替换
echo 替换之前:%repStr% echo 替换后:%repStr:aa=zz% echo repStr=%repStr% set "repStr=%aa:aa=zz%" echo repStr=%repStr%
字符串合并
set aa=aabbcc set bb=ddeeff echo %aa%%bb% echo aa=%aa% echo bb=%bb% set "aa=%aa%%bb%" echo aa=%aa%
字符串查找
Setlocal ENABLEDELAYEDEXPANSION ::启用命令扩展,参加setlocal /?命令 set str1=This is a test string set ch1=t ::注意,这里是区分大小写的! set str=%str1% ::复制字符串,用来截短,而不影响源字符串 :next if not "%str%"=="" ( set /a num+=1 if "!str:~0,1!"=="%ch1%" goto last ::比较首字符是否为要求的字符,如果是则跳出循环 set "str=%str:~1%" goto next ) set /a num=0 ::没有找到字符时,将num置零 :last echo 字符'%ch1%'在字符串"%str1%"中的首次出现位置为%num% echo 输出完毕,按任意键退出&&pause>nul&&exit
这里直接贴上对应的bat批处理代码及其运行结果
bat 批处理代码
echo off echo 完全路径:%0 echo 去掉引号:%~0 echo 所在分区:%~d0 echo 所在路径:%~p0 echo 文件名:%~n0 echo 拓展名:%~x0 echo 文件属性:%~a0 echo 修改时间:%~t0 echo 文件大小:%~z0 echo %d0% echo dp0 : %~dp0 echo sdp0:%~dp0 echo fo:%~f0 echo cd %cd% rem set 目标字符串=%源字符串:~起始值,截取长度% set testStr=abcdefghijklmnopqrstuvwxyz0123456789 echo 原始字符串 %testStr% echo 提取前五个字符串:%testStr:~0,5% echo 提取最后五个字符串:%testStr:~-5% echo 提取第一个到倒数第六个字符串:%testStr:~0,-5% echo 提取五个字符串,从第四个字符开始:%testStr:~3,5% echo ================================================ echo ================ 字符串替换 =========== echo ================================================ set repStr=aaabbbcccdddeeefff echo 替换之前:%repStr% echo 替换后:%repStr:aa=zz% echo repStr=%repStr% set "repStr=%aa:aa=zz%" echo repStr=%repStr% echo ================================================ echo ================ 字符串合并 =========== echo ================================================ set aa=aabbcc set bb=ddeeff echo %aa%%bb% echo aa=%aa% echo bb=%bb% set "aa=%aa%%bb%" echo aa=%aa% Setlocal ENABLEDELAYEDEXPANSION ::启用命令扩展,参加setlocal /?命令 set str1=This is a test string set ch1=t ::注意,这里是区分大小写的! set str=%str1% ::复制字符串,用来截短,而不影响源字符串 :next if not "%str%"=="" ( set /a num+=1 if "!str:~0,1!"=="%ch1%" goto last ::比较首字符是否为要求的字符,如果是则跳出循环 set "str=%str:~1%" goto next ) set /a num=0 ::没有找到字符时,将num置零 :last echo 字符'%ch1%'在字符串"%str1%"中的首次出现位置为%num% echo 输出完毕,按任意键退出&&pause>nul&&exit
相应的运行结果
相关文章
- 2024金摇杆奖年度游戏名单 11-22
- 用针在纸上绣画是哪种非遗技艺 蚂蚁新村11月21日答案最新 11-22
- 重返未来1999纸信圈儿什么时候up 为什么故事集卡池活动介绍 11-22
- 重返未来1999雾中盛会怎么玩 UTTU聚光专栏雾中盛会活动介绍 11-22
- 光遇姆明季后续版本怎么玩 光遇音乐节宴会节活动介绍 11-22
- 无期迷途四星装束是谁 无期迷途首个四星装束剪影介绍 11-22