参考书籍
《matlab 程序设计与综合应用》张德丰等著 感谢张老师的书籍,让我领略到matlab的便捷
《MATLAB技术大全》葛超等编著 感谢葛老师的书籍,让我领略到matlab的高效git
也能够经过string()函数将任意正整数矩阵转换成相应的字符串矩阵。github
(1)char(A):此函数将由正整数组成的矩阵转换成字符串矩阵,矩阵的元素通常要在0-65535之间,超出这个范围的是没有定义的,但也能够显示出结果,只是系统会给出超出范围的警告。
(2)s=char(C):若是C是由字符串组成的单元阵,此函数将单元阵C转换成字符串矩阵,字符串矩阵的每行就是单元阵的每一个元素,且用空格将每一个字符串补齐,以保证字符串矩阵的合法性。也能够用cellstr()函数将一个字符串矩阵转换为一个字符串单元阵。数组
(3)s=char(sl,s2,s3,...)此函数以各个字符串是s1,s2,s3,...为每行构成字符串矩阵S,并自动以适当的空格追加在较短的字符串的后面,使各行的字符串的字符个数相同,以构造合法的字符串矩阵。参数中的空字符串也会被空格填充为相同大小的空格字符串。函数
char(65537) s={'My' 'name' 'is' 'hello'} k=char(s) cellstr(k) ans = % 这个是越界了的输出的不知道是什么鬼东西 s = 'My' 'name' 'is' 'hello' k = My name is hello ans = 'My' 'name' 'is' 'hello'
double(S) 此函数做用与abs(S)有相同之处,它是将符合矩阵或字符串转换成双精度的浮点数组组成的矩阵。学习
blanks(n)用于输出n个空格。此函数在调整输出格式,要输出多个空格时十分有效,能够精确地输出须要的空格。一般与disp()函数联用,对输出格式进行调整。
spa
lower(S):将字符串或字符串矩阵S中的全部大写字母转换成小写,原有的小写字母保持不变设计
format compact for i=1:9 eval(['a' char(abs('0')+i) '=' char(abs('0')+i)]) end a1 = 1 a2 = 2 a3 = 3 a4 = 4 a5 = 5 a6 = 6 a7 = 7 a8 = 8 a9 = 9
(2)strcmp(C1,C2):若是Cl和C2都是由字符串组成的大小相同的单元阵,此函数返回一个与单元阵相同大小的逻辑矩阵。若是单元阵Cl和C2相同位置上的字符串相同,则在逻辑矩阵的相应位置上输出1,不然输出0。Cl和C2其中之一或所有能够为字符串或字符串矩阵,但返回的逻辑矩阵与单元阵有相同的大小。code
比较是否相同的大小写函数对大小写敏感,空格也会参与比较orm
strcmp('hello','hello') strcmp('hello','world') c1={'my' 'name';'is' 'lilei'}% 元胞数组,单元数组 c2={'her' 'name';'is' 'lili'} c3='NAME' c4 = ['my' 'name';'is' 'olli'] % 普通char数组 c5 = ['my' 'name';'is' 'lili'] strcmp(c1,c2) strcmp(c1,c3) strcmp(c5,c4) % ans = % 1 % ans = % 0 % c1 = % 'my' 'name' % 'is' 'lilei' % c2 = % 'her' 'name' % 'is' 'lili' % c3 = % NAME % c4 = % myname % isolli % c5 = % myname % islili % ans = % 0 1 % 1 0 % ans = % 0 0 % 0 0 % ans = % 0
s1='Matlab';s2='MatLab'; strncmp(s1,s2,3) strncmp(s1,s2,4) c1={'good' 'bad';'Matlab' 'Matlab'} c2='MatLab' strncmp(c1,c2,3) strncmp(c1,c2,4) % ans = % 1 % ans = % 0 % c1 = % 'good' 'bad' % 'Matlab' 'Matlab' % c2 = % MatLab % ans = % 0 0 % 1 1 % ans = % 0 0 % 0 0
k=strmatch('good',char('good','badgood','goodbad')) s={'yes';'noyes';'yesno'} strmatch('yes',s,'exact') % k = % 1 % 3 % s = % 'yes' % 'noyes' % 'yesno' % ans = % 1
format compact s='This is a good goose.' b=findstr(s,'oo') % s = % This is a good goose. % b = % 12 17
format compact strrep(s,'oo','ee') str1={'matlab' 'welcome';'you' 'me'} str2={'MatLab' 'lab';'good' 'software'} str3={'mat' 'come';'you' 'me'} strrep(str1,str3,str2) strrep(str1,'me','you') strrep('MatLab',str2,'!!!') strrep('matlab','lab',str3) % test_strrep % ans = % This is a geed geese. % str1 = % 'matlab' 'welcome' % 'you' 'me' % str2 = % 'MatLab' 'lab' % 'good' 'software' % str3 = % 'mat' 'come' % 'you' 'me' % ans = % 'MatLablab' 'wellab' % 'good' 'software' % ans = % 'matlab' 'welcoyou' % 'you' 'you' % ans = % '!!!' 'MatLab' % 'MatLab' 'MatLab' % ans = % 'matmat' 'matcome' % 'matyou' 'matme'
(1)strtok('string',d):此函数返回由字符串d做为分割的字符串string的第1部分,也就是说,返回字符串strmg中第1个字符d以前的全部字符。若是字符串中不含有字符d则返回整个字符串;若是d字符恰为字符串string的第1个字符,则函数返回除第1个字符以外的全部字符。合法的d能够为任意字符或字符串,若是d为字符串,则将它的第1个字符做为分隔符。若是string中有前导空格,则前导空格将被忽略。
(2)strtok('stnng'):此函数以默认的回车符(ASCII码为13)、制表符(ASCII码为9)、空格(ASCII码为32)做为分割符,前导空格将被忽略
(3)[token,rem]=strtok(•••):此函数不但返回上面的查找结果token,还返回剩余的字符串rem,其中不包括分割符,前导空格被忽略。其中strtok(...)能够为strtokok('string')或strtok('string',d)形式。blog