



免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
批处理中的字符串处理详解.txt当你以为自己一无所有时,你至少还有时间,时间能抚平一切创伤,所以请不要流泪。能满足的期待,才值得期待;能实现的期望,才有价值。保持青春的秘诀,是有一颗不安分的心。不是生活决定何种品位,而是品位决定何种生活。批处理中的字符串处理详解2008年03月25日 14:57首先说一下,批处理和高级语言不同,没有字符串处理函数,比如strcat之类的,但是却可以利用环境变量来实现这些函数的功能。本文对照C语言中的字符串处理函数,讲解在批处理中的实现方法。首先说一下字符串的存储,在C语言中,采用字符数组或者字符指针来存储字符串,而BAT中没有这些东东,所以要依靠环境变量来存储。设置环境变量的语句为set语句,本文不详细介绍了,参考set /?语句。1、C语中的strcpy函数,将一个字符串复制到另一个字符型指针或字符数组,覆盖原来的字符串。C语言中的调用方法:strcpy(目标字符串,源字符串)在批处理中的实现方法:set 目标字符串=%源字符串%示例: 复制内容到剪贴板 代码:echo off:关闭屏幕回显(可选)set str1=This is old string:设置str1中存储的字符串,注意没有双引号,这点与C语言等不同!set str2=This is new string:设置str2中存储的字符串echo 执行字符串拷贝以前:echo str1=%str1%echo str2=%str2%:先输出一次原有的字符串set str1=%str2%:字符串拷贝echo 执行字符串拷贝以后:echo str1=%str1%echo str2=%str2%:输出执行完字符串拷贝后的字符串echo 输出完毕,按任意键退出&pausenul&exit:输出信息,当用户按任意键时,结束该批处理。效果图: 截图00145.PNG (8.8 KB)2008-3-25 14:212、C语中的strcat函数,将一个字符串连接到另一个字符型指针或字符数组的末尾。C语言中的调用方法:strcat(目标字符串,源字符串)在批处理中的实现方法:set 目标字符串=%目标字符串%源字符串%示例: 复制内容到剪贴板 代码:echo offset str1=This is string1set str2=This is string2:设置str1和str2中存储的字符串echo 连接字符串以前:echo str1=%str1%echo str2=%str2%:先输出一次原有的字符串set str1=%str1%str2%:字符串连接echo 连接字符串以后:echo str1=%str1%echo str2=%str2%:输出执行完字符串连接后的两个字符串echo 输出完毕,按任意键退出&pausenul&exit效果图: 截图00146.PNG (8.69 KB)2008-3-25 14:213、字符串截取,C中没有这种函数,不过可以通过语句实现,不再介绍,直接说批处理的。set 目标字符串=%源字符串:起始值,截取长度%注意,起始值从0开始!截取长度是可选的,如果省略逗号和截取长度,将会从起始值一直截取到字符串的结尾。示例: 复制内容到剪贴板 代码:echo offset str1=This is string1:设置str1中存储的字符串set str2=%str1:8,6%set str3=%str1:0,4%set str4=%str1:5%:字符串截取echo 原字符串:echo str1=%str1%echo 截取得到的字符串:echo str2=%str2%echo str3=%str3%echo str4=%str4%:输出执行结果echo 输出完毕,按任意键退出&pausenul&exit效果图: 截图00147.PNG (8.19 KB)2008-3-25 14:214、C语中的strlen函数,取得字符串的长度。C语言中的调用方法:strlen(字符串)在批处理中的实现方法是利用goto和标签,形成循环结构,不断将字符串截短1字符,并用变量记录截短的次数,直到字符串变成空串。示例: 复制内容到剪贴板 代码:echo offset str1=This is a test stringset str2=Hello World:设置两个字符串set str=%str1%:将str1复制到str:next1:标签,用于goto跳转:注意与注释语句的区别,注释用两个冒号开头,标签则为一个冒号if not %str%= (:判断str是不是空串,如果不是则执行下边的语句set /a num+=1:算术运算,使num的值自增1,相当于num+或者+num语句set str=%str:1%:截取字符串,赋给自身goto next1:跳转到next1标签:这里利用goto和标签,构成循环结构):当以上循环结构执行完毕时,会执行下边的语句echo str1=%str1%echo str1的长度为:%num%:输出结果set num=0:将记和用的环境变量num置0,以便开始下一次运算。set str=%str2%:将str2复制到str:next2:定义一个新的标签:注意不能与已有的标签同名,否则会出错!if not %str%= (set /a num+=1set str=%str:1%goto next2):和上一个循环相似,不再介绍echo str2=%str2%echo str2的长度为:%num%:输出结果echo 输出完毕,按任意键退出&pausenul&exit效果图: 截图00148.PNG (7.87 KB)2008-3-25 14:215、C语中的strchr函数,在一个字符串中查找一个字符的首次出现位置,找到时返回所在位置,找不到时返回0值。批处理中的思路:不断截短字符串,并取截短后字符串中的首字符,和要求的字符比较,如果相同就利用goto语句跳出循环,输出结果,如果没有相同的字符,执行到最后就输出0值。示例: 复制内容到剪贴板 代码:echo offSetlocal ENABLEDELAYEDEXPANSION:启用命令扩展,参加setlocal /?命令set str1=This is a test stringset ch1=t:注意,这里是区分大小写的!set str=%str1%:复制字符串,用来截短,而不影响源字符串:nextif not %str%= (set /a num+=1if !str:0,1!=%ch1% goto last:比较首字符是否为要求的字符,如果是则跳出循环set str=%str:1%goto next)set /a num=0:没有找到字符时,将num置零:lastecho 字符%ch1%在字符串%str1%中的首次出现位置为%num%echo 输出完毕,按任意键退出&pausenul&exit效果图: 截图00160.PNG (7.59 KB)2008-3-25 14:21引用:最后出几道题,看看大家学习的怎么样!(1)如何实现C语言中strstr函数的功能?提示:strstr函数的功能是在字符串1中查找字符串2,找到时返回串2首次出现的位置,否则返回0值。与strchr区别就是,第二个参数是字符串,而不是字符了。(2)如何用批处理构建while循环?提示:while循环一般格式为:while(表达式)循环体break|continue;循环体其中,循环体为0条或多条语句,break用于跳出循环,continue用于直接判断表达式并决定是否进入下一次循环。一般执行顺序:首先判断表达式,如果成立则
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 物业承包合同下新增厨师补充协议范文8篇
- 压力真空罐安全培训流程课件
- 2025年区块链行业区块链技术应用前景与金融改革研究报告
- 2025年物联网行业物联网技术应用前景研究报告
- 2025年火箭航天行业商业化前景预测报告
- 2025年环保行业绿色环保产品市场前景研究报告
- 2025年虚拟现实行业VR技术与虚拟现实应用前景研究报告
- 商品车电器使用培训课件
- 商品混凝土安全技术培训课件
- 2025重庆建峰工业集团有限公司招聘77人笔试参考题库附带答案详解
- 股权代持协议(模板)8篇
- 《AI创意课件之设计》课件
- 医院会计笔试题目及答案
- 河南豫信电科所属公司招聘笔试题库2025
- GB/T 45345-2025金属及其他无机覆盖层工程用直流磁控溅射银镀层镀层附着力的测量
- 无人机教员聘用协议书
- 药物非临床研究质量管理规范
- 脑科生理病理图谱解读
- 全国青少年科技辅导员专业水平认证笔试考题
- (行业)常用表面处理工艺详解(行业讲座教学培训课件)
- 配电网安健环设施标准
评论
0/150
提交评论