Matlab刻意训练
Task03:数据类型(3.13-3.15)
数组:
- 字符型
- 数值型
- 单元型
- 结构型
- java型
- 包柄函数
字符型数组
>> A='Today is Saturday.' %输入字符数组A
A =
'Today is Saturday.'
>> B='I want to go home.' %输入字符数组B
B =
'I want to go home.'
>> len_A= size(A) %检查A的长度
len_A =
1 18
>> len_B=size(B) %检查B的长度
len_B =
1 18
>> AB=strcat(A,B) %字符数组A、B进行水平连接
AB =
'Today is Saturday.I want to go home.'
>> ab=strvcat(A,B) %字符数组A、B进行垂直连接
ab =
2×18 char 数组
'Today is Saturday.'
'I want to go home.'
>> size(ab) %垂直连接后的大小
ans =
2 18
>> double(ab) %转换成ASCII码
ans =
1 至 17 列
84 111 100 97 121 32 105 115 32 83 97 116 117 114 100 97 121
73 32 119 97 110 116 32 116 111 32 103 111 32 104 111 109 101
18 列
46
46
Note:
1、查找字符串
>> s='How are you doing today?';
>> k=findstr(s,'you')
k =
9
>> k=findstr('you',s) %输入字符串互换,对结果无影响
k =
9
>> k=findstr(s,'me') %无所找字符串时,返回空阵
k =
[]
>> k=findstr('yo',s)
k =
9
>> k=findstr('o',s)
k =
2 10 14 20
2.替换字符串
strrep(字符串,‘被替换的字符串’,‘替换后的字符串’)
>> S1='The area is at least 400 square meters';
>> newarea= strrep(S1,'400','1000')
newarea =
'The area is at least 1000 square meters'
>> newarea= strrep(S1,'e','!')
newarea =
'Th! ar!a is at l!ast 400 squar! m!t!rs'