bat批处理之字符串操作的实现


Posted in Python onMarch 16, 2022

通常情况下,任何一种语言对于字符串的操作都是重中之重。这里稍微介绍下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

相应的运行结果

bat批处理之字符串操作的实现

到此这篇关于bat批处理之字符串操作的实现的文章就介绍到这了,更多相关批处理字符串操作内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python字典操作简明总结
Apr 13 Python
Python中的pass语句使用方法讲解
May 14 Python
Python实现队列的方法
May 26 Python
Python的Django框架中的Context使用
Jul 15 Python
利用Python命令行传递实例化对象的方法
Nov 02 Python
Python matplotlib画图实例之绘制拥有彩条的图表
Dec 28 Python
python list删除元素时要注意的坑点分享
Apr 18 Python
解决pyinstaller打包发布后的exe文件打开控制台闪退的问题
Jun 21 Python
Python解释器以及PyCharm的安装教程图文详解
Feb 26 Python
解决redis与Python交互取出来的是bytes类型的问题
Jul 16 Python
python可视化分析的实现(matplotlib、seaborn、ggplot2)
Feb 03 Python
Python数据类型最全知识总结
May 31 Python
一起来学习Python的元组和列表
Mar 13 #Python
python自动化测试之Selenium详解
python数字类型和占位符详情
Mar 13 #Python
Python+Selenium自动化环境搭建与操作基础详解
Python+Selenium实现读取网易邮箱验证码
Mar 13 #Python
asyncio异步编程之Task对象详解
Mar 13 #Python
实例详解Python的进程,线程和协程
You might like
迅雷下载《中学科技》怀旧期刊下载
2021/02/27 无线电
给初学PHP的5个入手程序
2006/11/23 PHP
解析php根据ip查询所在地区(非常有用,赶集网就用到)
2013/07/01 PHP
PHP面向对象教程之自定义类
2014/06/10 PHP
用 Composer构建自己的 PHP 框架之构建路由
2014/10/30 PHP
PHP递归实现汉诺塔问题的方法示例
2017/11/25 PHP
php使用imagecopymerge()函数创建半透明水印
2018/01/25 PHP
CI框架(CodeIgniter)实现的导入、导出数据操作示例
2018/05/24 PHP
javascript事件问题
2009/09/05 Javascript
jQuery控制DIV层实现由大到小,由远及近动画变化效果
2015/10/09 Javascript
jquery表单验证需要做些什么
2015/11/17 Javascript
node.js实现端口转发
2016/04/14 Javascript
Function.prototype.apply()与Function.prototype.call()小结
2016/04/27 Javascript
Ionic 2 实现列表滑动删除按钮的方法
2017/01/22 Javascript
JS简单获取日期相差天数的方法
2017/04/24 Javascript
在vue中使用v-bind:class的选项卡方法
2018/09/27 Javascript
ES6 迭代器与可迭代对象的实现
2019/02/11 Javascript
Vue路由守卫之路由独享守卫
2019/09/25 Javascript
解决vue初始化项目时,一直卡在Project description上的问题
2019/10/31 Javascript
[02:58]献给西雅图的情书_高清
2014/05/29 DOTA
[01:24:51]2014 DOTA2华西杯精英邀请赛 5 25 LGD VS NewBee第二场
2014/05/26 DOTA
python根据出生年份简单计算生肖的方法
2015/03/27 Python
Python的Django框架下管理站点的基本方法
2015/07/17 Python
简单谈谈python中的多进程
2016/11/06 Python
Python程序包的构建和发布过程示例详解
2019/06/09 Python
python实现电子书翻页小程序
2019/07/23 Python
让你的Python代码实现类型提示功能
2019/11/19 Python
Python json读写方式和字典相互转化
2020/04/18 Python
PyPDF2读取PDF文件内容保存到本地TXT实例
2020/05/12 Python
俄罗斯首家面向中国消费者的一站式购物网站:Wruru
2020/05/08 全球购物
机关财务管理制度
2014/01/17 职场文书
安全横幅标语
2014/06/09 职场文书
民主评议党员自我评价材料
2014/09/18 职场文书
平遥古城导游词
2015/02/03 职场文书
2016党员干部反腐倡廉心得体会
2016/01/13 职场文书
Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解
2022/03/03 Python