MATLAB 7 字符串操作

 1. 字符串的设定
在MATLAB 7中的字符串一般是ASCII值的数值数组,它作为字符串表达式进行显示。MATLAB 7对字符串的设定非常简单,只需用单引号(’)将需设定的字符串引注即可。
>> str='I have many good friends!'
str =
I have many good friends!
>> whos
Name Size Bytes Class Attributes
str 1x25 50 char

2. 字符串的操作
字符串元素的读取
-利用数组操作工具进行读取
-使用disp函数显示字符串
>> str='I have many good friends!';
>> str
str =
I have many good friends!
>> str(3)
ans =
h
>> disp(str)
I have many good friends!



字符串的基本变换

字符串的ASCII码操作
使用char函数进行逆变换
字符串的执行
>> for n = 2:3
eval(['M' num2str(n) ' = magic(n)'])
end
M2 =
1 3
4 2
M3 =
8 1 6
3 5 7
4 9 2

常见字符串的操作
函数名      函数用途
strcat        链接字符串
strcmp      比较字符串大小
findstr       在其他的字符串中寻找该字符串
strmatch   查找可能匹配的字符串
strtok        查找字符串中的记号
deblank    删除字符串内的空格
iscellstr    字符串的单元检验
isspace    空格检验
strvcat      垂直链接字符串
strncmp    比较字符串的前n个字符
strjust       证明字符数组
strrep       用其他字符串代替改串
blanks      生成空的字符串
ischar       字符串检验
isletter      字母检验
strings      strings函数的帮助

字符串的运算

字符串的运算主要是指判断字符串是否相等,通过字符的运算来比较字符,字符串中字符的分类、查找与替换、字符串与数值的转换和数组与字符串的转换等。
有两个函数可以用来判断两个输入的字符串是否相等。
strcmp函数:  比较两个字符串是否相等,当相等时,系统将返回值1,不相等时,返回值0;
strncmp函数:比较两个输入字符串的前几个字符是否相等,当相等时,系统将返回值1,不相等时,返回值0。

通过字符的运算比较字符
符号形式-----符号意义----英文简写-----------
==             等于            eq
~=            不等于         ne
<              小于              lt
>               大于             gt
<=          小于或等于  le
>=          大于或等于  ge

字符串中字符的分类
字符串中的字符通常可以分为空白字符、字母字符和其他类型的字符。用户可以用isletter和isspace两个函数来对字符串中的字符进行分类 。
>> realstring='goodplane.com '
realstring =
goodplane.com
>> A=isspace(realstring)
A =
0 0 0 0 0 0 0 0 0 0 0 0 0 1 1


查找与替换

查找与替换是字符串操作中的一项重要内容,MATLAB 7语言提供了findstr、strfind和strrep等函数来实现查找与替换操作。
>> str1='我的名字是千千阙歌';
>> str2=strrep(str1,'千千阙歌','歌声依旧')
str2 =
我的名字是歌声依旧


字符串与数值的转换
常见的字符串转换函数
函数------------------------- 功能------------------
hex2dec                          将16进制字符串转化为10进制整数
bin2dec                           将2进制字符串转化为10进制整数
base2dec                        转化B底字符串为10进制整数
upper                                改该字符串为大写
fprintf                                 把格式化的文本写到文件中或显示屏上
sscanf                               用格式控制,字符串转换成数字
num2str                            数字转换成字符串
dec2hex                            将10进制整数转化为16进制字符串
dec2bin                             将10进制整数转化为2进制字符串
hex2num                           将16进制字符转化为双精度数
lower                                  改该字符串为小写
sprintf                                 用格式控制,数字转换成字符串
char                                    ASCII码转换成字符串
int2str                                 整数转换成字符串

使用str2num函数将字符型矩阵转换为数字矩阵
>> S = ['1 2';'3 4']
S = % S为字符型矩阵
1 2
3 4
>> S2=str2num(S)
S2 = %S2为数字型矩阵
1 2
3 4

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值