资源描述:
《matlab中的字符串操作总结》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、字符串操作总结作者:晏江函数描述char(S1,S2,…)利用给定的字符串或单元数组创建字符数组double(S)将字符串转化成ASC码形式cellstr(S)利用的给定的字符数组创建字符串单元数组blanks(n)生成一个由n个空格组成的字符串deblank(S)删除尾部的空格eval(S)evalc(S)使用MATLAB解释器求字符串表达式的值ischar(S)判断是不是字符串数组iscellstr(C)判断是不是字符串单元数组isletter(S)判断是不是字母isspace(s)判断是不是空格strcat(S1,S2,…)将多个
2、字符串水平竖直排列strvcat(S1,S2,…)将多个字符串竖直排列strcmp(S1,S2)判断字符串是否相等strncmp(S1,S2,n)判断前n个字符串是否相等strcmpi(S1,S2)判断字符串是否相等(忽略大小写)strncmpi(S1,S2,n)判断前n个字符串是否相等(忽略大小写)strtrim(S1)删除结尾的空格findstr(S1,S2)查找strfind(S1,S2)在S1种查找S2strjust(S1,type)按照指定的type调整一个字符串数组strmatch(S1,S2)查找要求的字符串的下标strr
3、ep(S1,S2,S3)将字符串S1中出现的S2用S3代替strtok(S1,D)查找S1中的第一个给定的分隔符之前和之后的字符串upper(S)将一个字符串成大写lower(S)将一个字符串转换为小写num2str(k)将数字转换成字符串int2str(k)将整数型转换为字符串mat2str(k)将矩阵转换为字符串,供eval使用str2double(S)将字符串数组转化为数值数组sprintf(S)创建含有指定格式的字符串sscanf(S)按照指定的控制格式读取字符串C{3}对内容进行寻址C(3)对单元索引(24)利用正在表达式搜索
4、>>str=’asdfasfdgdfgtyefgrtyj sdfgqwfgerretyyi.,mzxfgcfdghfgh’;>>regexp(str,’fg’)ans= 12 18 29 34 54 63我们可以使用字符类来匹配指定的字符,如一个字母,一个数字或一个空格符,也可以用来匹配一个字符集。最有用的一个字符类是一个句号(.),它用来表示任意的单个字符。另外一个有用的字符类是位于方括号中的字符序列或某一部分字符,这一语法用来表示寻找与方括号中任何一个字符元素匹配的字符串子集。例如:我们要在str中寻找第一个
5、字符为d,最后一个字符为f或g的三个字符组合,可以使用下面的代码,>>regexpi(str,’d.[fg]’)ans=11 28 >>regexpi(str,’s.[fg]’,'match’) 列出来ans=’sdf’ ’sdf’ >>regexp(str,’[a-d]’)ans= 1 3 5 9 11 28 56 59 列出a-d所有(25)关系运算:xor(x,y) 异或关系any(X) X中有一个不为零,结果就为一all(X) X中只要有一个为零即为零。B=
6、B+(B==0)*eps,这样可以避免零的出现>>B=-2:2B= -2 -1 0 1 2>>x=sin(B)./BWarning:Dividebyzero.x= 0.4546 0.8415 NaN 0.8415 0.4546>>B=B+(B==0)*epsB= -2.0000 -1.0000 0.0000 1.0000 2.0000>>x=sin(B)./Bx= 0.4546 0.8415 1.0000 0.8415 0.4546(26)流程控制s
7、witchexpressioncasetest_expression (commands1)casetest_expression (commands2)casetest_expression (commands3)..endtry(commands1)catch(command2)end在这里,将(commands1)中的命令都执行,如果没有错误,程序控制将直接跳到end。如果哟错误,程序控制酒立即跳到catch语句。执行表达式(commands2).利用lasterr函数可以返回代码执行遇到的河中错误:>>matlab(:)???U
8、ndefinedfunctionorvariable“matlab”.>>lasterrans=Undefinedfunctionorvariable“matlab”.另外利用lasterror可以将更详细