2017-05-03 38 views
0

我想在matlab中使用repmat连接单元格数组中的字符串。如何在matlab中连接单元格数组中的字符串

我想要做的是一样的东西:

aa={'xx','yy',repmat({'zz'},1,3)} 

其结果等同于:

aa={'xx','yy','zz','zz','zz'} 

而是其结果是:

{'xx','yy', {1x3 cell array} } 

我意识到,如果我有一个变量,如C=repmat('zz',1,3)然后我可以做

aa{'xx','yy',C{:}} 

但问题是我不想定义像C这样的任何其他变量。如果可能,我希望这样做。有任何想法吗?

回答

2

使用矢量串联:

aa=[{'xx','yy'},repmat({'zz'},1,3)] 

aa = 
    1×5 cell array 

    'xx' 'yy' 'zz' 'zz' 'zz' 
+0

好。这工作,但没有办法做到这一点与repmat函数?我所希望的是一个函数,它接受一个单元格数组并将其转换为以逗号分隔的列表,即重现C {:}行为。例如:输出逗号分隔列表的colonoperator(repmat({'zz'},1,3))。 –

+0

@BenBarrowes你真的不能。你为什么反对临时变量? – rayryeng

+0

'reshape([{'xx','yy'},repmat({'zz'},1,3)],[],1)'为你工作? – user2999345

相关问题