2017-05-03 82 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

相關問題