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 相关文章推荐
web.py在SAE中的Session问题解决方法(使用mysql存储)
Jun 24 Python
解决安装tensorflow遇到无法卸载numpy 1.8.0rc1的问题
Jun 13 Python
详解python如何在django中为用户模型添加自定义权限
Oct 15 Python
selenium+python自动化测试之多窗口切换
Jan 23 Python
python命令 -u参数用法解析
Oct 24 Python
如何使用python3获取当前路径及os.path.dirname的使用
Dec 13 Python
PyQt5 closeEvent关闭事件退出提示框原理解析
Jan 08 Python
python中68个内置函数的总结与介绍
Feb 24 Python
numpy矩阵数值太多不能全部显示的解决
May 14 Python
Keras框架中的epoch、bacth、batch size、iteration使用介绍
Jun 10 Python
python实现逻辑回归的示例
Oct 09 Python
Python3+Django get/post请求实现教程详解
Feb 16 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/03/03 咖啡文化
PHP实现通过中文字符比率来判断垃圾评论的方法
2014/10/20 PHP
PHP explode()函数用法讲解
2019/02/15 PHP
Yii2框架操作数据库的方法分析【以mysql为例】
2019/05/27 PHP
php实现JWT验证的实例教程
2020/11/26 PHP
基础的prototype.js常用函数及其用法
2007/03/10 Javascript
javascript 一些用法小结
2009/09/11 Javascript
整理一些JavaScript的IE和火狐的兼容性注意事项
2011/03/17 Javascript
jQuery EasyUI API 中文文档 - ComboGrid 组合表格
2011/10/13 Javascript
用js实现输入提示(自动完成)的实例代码
2013/06/14 Javascript
javascript使用isNaN()函数判断变量是否为数字
2013/09/21 Javascript
jQuery $命名冲突解决方案汇总
2014/11/13 Javascript
nodejs批量修改文件编码格式
2015/01/22 NodeJs
AngularJS模块管理问题的非常规处理方法
2015/04/29 Javascript
跟我学习javascript的执行上下文
2015/11/18 Javascript
简单谈谈json跨域
2016/03/13 Javascript
个人网站留言页面(前端jQuery编写、后台php读写MySQL)
2016/05/03 Javascript
jQuery实现布局高宽自适应的简单实例
2016/05/28 Javascript
vue.js 上传图片实例代码
2017/06/22 Javascript
基于Vuejs的搜索匹配功能实现方法
2018/03/03 Javascript
vue iview实现动态路由和权限验证功能
2018/04/17 Javascript
JS中的算法与数据结构之队列(Queue)实例详解
2019/08/20 Javascript
Node登录权限验证token验证实现的方法示例
2020/05/25 Javascript
antd vue 刷新保留当前页面路由,保留选中菜单,保留menu选中操作
2020/08/06 Javascript
python基础教程之udp端口扫描
2014/02/10 Python
不要用强制方法杀掉python线程
2017/02/26 Python
python中将字典形式的数据循环插入Excel
2018/01/16 Python
python实现任意位置文件分割的实例
2018/12/14 Python
TensorFlow实现打印每一层的输出
2020/01/21 Python
python中逻辑与或(and、or)和按位与或异或(&、|、^)区别
2020/08/05 Python
Supersmart英国:欧洲市场首批食品补充剂供应商之一
2018/05/05 全球购物
得到Class的三个过程是什么
2012/08/10 面试题
初中高效课堂实施方案
2014/02/26 职场文书
2014国庆节演讲稿:祖国在我心中(400字)
2014/09/25 职场文书
2014年司法所工作总结
2014/11/22 职场文书
Python实现批量将文件复制到新的目录中再修改名称
2022/04/12 Python