matlab第六章字符串处理.ppt

上传人:牧羊曲112 文档编号:6512072 上传时间:2023-11-08 格式:PPT 页数:17 大小:212.49KB
返回 下载 相关 举报
matlab第六章字符串处理.ppt_第1页
第1页 / 共17页
matlab第六章字符串处理.ppt_第2页
第2页 / 共17页
matlab第六章字符串处理.ppt_第3页
第3页 / 共17页
matlab第六章字符串处理.ppt_第4页
第4页 / 共17页
matlab第六章字符串处理.ppt_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《matlab第六章字符串处理.ppt》由会员分享,可在线阅读,更多相关《matlab第六章字符串处理.ppt(17页珍藏版)》请在三一办公上搜索。

1、第七章 字符串处理,7.1字符阵列,在MATLAB中,每个字符按16位ASC码储存,这大大方便了在MATLAB中使用双字节内码字符集,如汉字系统。利用double和char函数可在字符与ASC码之间进行转换。,一、字符与ASCII码之间的变换 利用double函数和char函数可实现在字符与其ASCII码之间进行变换。例如:name=河北大学%字符串 a=double(name)%转变为ASCII码 name=char(a)%ASCII码转变为字符,二、建立二维字符阵列 注意:建立二维阵列时,应注意确保每行上的字符数相等,如果长度不等,应在其后补空格。可以利用blanks(n)函数来添加空格。

2、利用deblank函数可以删除字符串末尾多余的空格。例如:s1=welcome to hebei university s2=you are welcome to my hometown s=s1blanks(3);s2,7.2 字符串单元阵列 字符串单元阵列中每个元素均为字符串,而且已经删除了末尾的空格。1.利用cellstr函数可以方便的将字符阵列变换成字符串单元阵列 例如:cell=cellstr(s)2.利用char函数可以进行反变换 例如:s=char(cell),7.3字符串比较,比较字符串的方式:1,比较两个字符串或其部分是否相同;2,比较两个字符串中个别字符是否相同 3,可对字

3、符串中的每个元素进行归类。,7.3字符串比较,一、比较字符串是否相同 strcmp函数用于比较字符串是否相同strcmpi函数用于比较时忽略大小写strncmp函数用于比较两个字符串的前n个字符是否相同strncmpi函数比较时忽略大小写,例如:s1=help,s2=hello,s3=Hellok1=strcmp(s1,s2)则k1=0k2=strcmpi(s1,s3)则k2=1二、比较字符是否相同利用关系操作符。,三、英文字母的检测 isletter函数和isspace函数,返回结果为(1)或假(0)。例如:s=hebei 2004 letter=isletter(s)space=isspa

4、ce(s),7.4 字符串搜索与取代 利用findstr(查找某个字符串)strmatch(字符串匹配)strrep(修改字符串)strtok(提取字符串的首部)等函数可以完成字符串的搜索与取代 例如:function allwords=words(sentence)r=sentence allwords=;While(any)w,r=strtok(r)Allwords=strvcat(allwords,w),7.5 字符串与数值之间的变换常用的有 int2str(数值转换为字符)num2str(含有小数的数值转换为字符)bin2dec(二进制转换为十进制)hex2dec(十六进制转换为十进制

5、)base2dec(三进制转换为十进制)dec2base(十进制转换为三进制),7.7字符串函数,,一般命令 1,char 功能:建立字符矩阵 格式:s=char(x),7.7字符串函数,2,double 功能:字符阵列变换成双精度数值 格式:y=double(x)3,cellstr 功能:从字符阵列中建立单元阵列 格式:c=cellstr(s),7.7字符串函数,,字符串测试 1,ischar 功能:检测到字符阵列时为逻辑真 格式:k=ischar(a),7.7字符串函数,,字符串操作 1,strcat 功能:字符串连接 格式:t=strcat(s1,s2,s3.)2,strvcat 功能:

6、字符串的直接连接 格式:t=strvcat(s1,s2,s3.),例1 混合频率信号成分分析,有一信号x由三种不同频率的正弦信号混合而成,通过得到信号的DFT,确定出信号的频率及其强度。程序如下t=0:1/119:1;x=5*sin(2*pi*20*t)+3*sin(2*pi*30*t)+sin(2*pi*45*t);y=fft(x);m=abs(y);f=(0:length(y)-1)*119/length(y);figure(1)Subplot(2,1,1),plot(t,x),grid ontitle(多频率混合信号),ylabel(Inputitx),xlabel(Time)subplot(2,1,2),plot(f,m)ylabel(Abs.Magnitude),grid onxlabel(Frequency(Hertz),

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号