MATLAB字符串基本操作(⼀)
在MATLAB中,有⼀些对于字符串操作的函数,通过这些函数可以使对于字符串的操作⼗分简单,现在,就来介绍⼀些对于字符串的基本操作:
建⽴⼀个字符串向量,然后对该向量做如下处理:
(1)取 2~6 个字符组成⼦字符串。
(2)分别取第偶数个字符组成⼦字符串。
(3)取出⾥⾯的数字并转化为数值,然后求和。
(4)去掉字符串中的数字字符。
(5)将字符串按照倒序重新排列。
(6)将字符串中的⼩写字母变成⼤写字母,其他不变。
(7)统计字符串中消息字母的个数
⾸先创建⼀个字符串,⽤变量str存储,并输出,代码如下:
string='lin12g13o1343n53153g154x6i547a 548o645s865h9e56ng';
disp(string);
随机提取若⼲字符,并组成新的字符:
str1=string(3:8);
disp(str1);
提取偶数个字符,并组成⼀个新的字符串,⾸先求解出该字符串的长度,存在变量str_long中,然后从字符串的第⼆个开始取,间隔步长为2,直⾄最后。
str_long=length(string);
str2=string(2:2:str_long);
disp(str2);
⾸先提取字符串中所有的数字,然后⽤str2num()函数将数字由字符型转换成数值型,接着进⾏求和。
sum=0;
n=0;
for i=1:str_long
if string(1,i) > '0' & string(1,i) < '9'
num_str=string(1,i);
% disp(num_str);
n=n+1;
sum=sum+str2num(num_str);
end
end
disp('sum of number');
disp(sum);
⾸先做出判断,出所有的字符,并存在⼀个新的字符串⾥⾯,最后⽤strrep(),函数去除字符串⾥⾯所有的空格。
x=1;
for i=1:str_long
if (string(1,i)-'a'>=0 & string(1,i)-'a'< 26)||(string(1,i)-'A'>=0 & string(1,i)-'A'< 26)
str_str(1,x)=string(1,i);
x=x+1;
end
end
str_str=strrep(str_str,' ','');
disp(str_str);
倒序输出字符串:
unstring=string(end:-1:1);
disp(unstring);
upper()函数将字母由⼩写转换为⼤写,lower()函数将字母由⼤写转换为⼩写,然后其余不是26个英⽂字母的,按原格式输出。
for i=1:str_long
n=string(1,i);
if n>='a' && n<='z'
s(1,i)=upper(n);
elseif n>='A' && n<='Z'
s(1,i)=lower(n);
else
matlab二进制字符串转数组s(1,i)=n;
end
end
disp(s);
计算字符串中所有除空格意外的字符所占内存之和。
b = strtrim(string); blen = length(b)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论