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正则分组的应用
Nov 10 Python
使用Python实现一个简单的项目监控
Mar 31 Python
基于python的ini配置文件操作工具类
Apr 24 Python
Apache,wsgi,django 程序部署配置方法详解
Jul 01 Python
Django使用 Bootstrap 样式修改书籍列表过程解析
Aug 09 Python
python getpass模块用法及实例详解
Oct 07 Python
通过python实现windows桌面截图代码实例
Jan 17 Python
TensorFlow实现保存训练模型为pd文件并恢复
Feb 06 Python
解决import tensorflow as tf 出错的原因
Apr 16 Python
Python使用Paramiko控制liunx第三方库
May 20 Python
Sentry错误日志监控使用方法解析
Nov 12 Python
pytorch model.cuda()花费时间很长的解决
Jun 01 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
服务器web工具 php环境下
2010/12/29 PHP
深入领悟JavaScript中的面向对象
2013/11/18 Javascript
Javascript写入txt和读取txt文件示例
2014/02/12 Javascript
JavaScript 实现鼠标拖动元素实例代码
2014/02/24 Javascript
jQuery实现友好的轮播图片特效
2015/01/12 Javascript
javascript简单判断输入内容是否合法的方法
2016/05/11 Javascript
JS实现关闭当前页而不弹出提示框的方法
2016/06/22 Javascript
js实现文字截断功能
2016/09/14 Javascript
什么是JavaScript中的结果值?
2016/10/08 Javascript
微信小程序实现点击按钮移动view标签的位置功能示例【附demo源码下载】
2017/12/06 Javascript
element-ui组件table实现自定义筛选功能的示例代码
2019/03/15 Javascript
使用express获取微信小程序二维码小记
2019/05/21 Javascript
浅谈Vue的响应式原理
2019/05/30 Javascript
js实现图片上传到服务器和回显
2020/01/19 Javascript
基于javascript处理nginx请求过程详解
2020/07/07 Javascript
深入了解Vue动态组件和异步组件
2021/01/26 Vue.js
python正则表达式中的括号匹配问题
2014/12/14 Python
Python实现PS滤镜中马赛克效果示例
2018/01/20 Python
强悍的Python读取大文件的解决方案
2019/02/16 Python
pandas 数据结构之Series的使用方法
2019/06/21 Python
详解Python中的各种转义符\n\r\t
2019/07/10 Python
基于python实现FTP文件上传与下载操作(ftp&sftp协议)
2020/04/01 Python
python dict乱码如何解决
2020/06/07 Python
Pycharm制作搞怪弹窗的实现代码
2021/02/19 Python
详解Html5页面实现下载文件(apk、txt等)的三种方式
2018/10/22 HTML / CSS
Rakuten Kobo台湾:电子书、eReaders和Reading应用程式
2017/11/24 全球购物
WEB控件及HTML服务端控件能否调用客户端方法?如果能,请解释如何调用?
2015/08/25 面试题
应届生学校辅导员求职信
2013/11/07 职场文书
好邻里事迹材料
2014/01/16 职场文书
《欢乐的泼水节》教学反思
2014/04/22 职场文书
初中学校军训方案
2014/05/09 职场文书
爱我中华演讲稿
2014/05/20 职场文书
焦点访谈观后感
2015/06/11 职场文书
Python绘制地图神器folium的新人入门指南
2021/05/23 Python
matplotlib如何设置坐标轴刻度的个数及标签的方法总结
2021/06/11 Python
《勇者辞职不干了》上卷BD发售宣传CM公开
2022/04/08 日漫