一个字符串是存储在一个行向量中的文本,这个行向量中的每一个元素代表一个字符,字符串可以由0个或多个字符组成。下面是一些字符串的操作方法
(1)字符串的创建
MATLAB中创建字符串非常简单,将字符串中的字符放到一对单引号之间即可。该对单引号必须在英文状态下输入
如果创建的这个字符串中本身就包含了单引号,那么就在出现单引号的地方用两个单引号代替,比如
(2)字符串中元素的访问和操作
字符串是以向量的形式存储的,可以通过其下标访问其中的元素
①替换原字符串中的某几个字符
②取出字符串中的某一部分字串
③将字符串翻转
④计算字符串中字符的个数
其中r代表行数,c代表列数,就是字符数
(3)字符串的字符的ASCII码值
字符串中的字符是以其对应的ASCII码值来存储的。abs和double命令都可以用来获取字符串对应的ASCII码数值数组,char命令则可以把ASCII码数值数组转换为字符串
又可以将ASCII码数组转换为原来的字符串形式
(4)多个字符串的连接和比较
MATLAB提供了两个命令用于字符串的连接:strcat和strvcat。比较字符串的内容可以使用strmatch和strcmp
①strcat(str1,str2,···) %将括号里面的字符串连接成行向量
②strvcat(str1,str2,···) %将括号里的字符串连接成列向量,各字符串必须有相同的字符个数
③strmatch(key,strs) %检查strs中的各行,返回一个列向量,包含了各行以字符串key开头的行号
④strncmp(str1,str2,n) %比较字符串str1和str2的前n个字符,(区分大小写),如果相同返回1,反之为0
⑤strncmpi(str1,str2,n) %比较字符串str1和str2的前n个字符,(不区分大小写),如果相同返回1,反之为0
举例说明:
(5)数字数组和字符串的转换函数
①num2str(A) %将数字或数组A转换成字符串(数组)
②str2num(str) %将字符串str转换成数字或数组
③mat2str(A) %将数字数组A转换成字符串(行向量)
④int2str(A) %把整数数值或数组转换成为整数数字组成的字符串
whos命令显示工作空间中驻留的变量名称,还显示它们的大小、所占字节数及数据类型等信息
(6)还有其他的一些常用的操作函数,比如去掉字符串结尾的空格、大小写转换、查看一个字符串中是否包含另外一个字符串等操作,没有必要背那么多,这里也不一一列举了,需要的时候去查找就可以了。