1、将字符串转换为在元胞中包含子数组的元胞数组
例如,需要添加空格的原字符串为char_a,共包含8个字符。
char_a = '12345678'
char_a =
'12345678'
eg1:
设每隔2个字符添加一个空格,利用“mat2cell”函数将char_a分为4组元胞数组:
b = mat2cell(a,1,2*ones(1,length(a)/2))
b =
1×4 cell 数组
{'12'} {'34'} {'56'} {'78'}
eg2:
若每个字符之间均添加一个空格,利用“mat2cell”函数将char_a分为8组元胞数组:
b = mat2cell(a,1,ones(1,length(a)))
b =
1×8 cell 数组
{'1'} {'2'} {'3'} {'4'} {'5'} {'6'} {'7'} {'8'}
对“mat2cell”函数的解释如下:
c = mat2cell(A,dim1Dist,…,dimNDist) 将数组 A 划分为更小的数组,并在元胞数组 C 中返回它们。向量 dim1Dist,…dimNDist 指定如何划分 A 的行、列和(如果适用)更高维度。C 中较小的数组可以具有不同大小。A 可以包含任何数据类型。
2、将各子元胞数组进行连接,形成带空格的新字符串
调用“strjoin”函数,将生成的子元胞数组进行拼接:
eg1:
针对每隔两个字符添加一个间隔的情况:
b = mat2cell(a,1,2*ones(1,length(a)/2))
b =
1×4 cell 数组
{'12'} {'34'} {'56'} {'78'}
>> char_new = strjoin(b, ' ')
char_new =
'12 34 56 78'
eg2:
针对每隔一个字符添加一个间隔的情况:
b = mat2cell(a,1,ones(1,length(a)))
b =
1×8 cell 数组
{'1'} {'2'} {'3'} {'4'} {'5'} {'6'} {'7'} {'8'}
>> char_new = strjoin(b, ' ')
char_new =
'1 2 3 4 5 6 7 8'
对“strjoin”函数的解释如下:
str = strjoin(C,delimiter) 通过将 C 的每个元素与 delimiter 中的元素联接来构造 str。