假设我有一个包含字符串的单元格数组:
c = {'foo1', 'foo2', 'foo3'}
我现在想要添加相同的后缀" bar
"每个字符串,以便单元格数组变为:
c = {'foo1bar', 'foo2bar', 'foo3bar'}
是否存在执行此操作的快捷方式,而没有显式循环遍历每个元素?
答案 0 :(得分:9)
strcat
对单元格数组进行操作:
>> c = {'foo1', 'foo2', 'foo3'}
c =
'foo1' 'foo2' 'foo3'
>> c2 = strcat(c,'bar')
c2 =
'foo1bar' 'foo2bar' 'foo3bar'
答案 1 :(得分:2)
如何使用cellfun
:
c=cellfun(@(x) strcat(x, 'bar'), c, 'Uniformoutput', 0);
我不知道它的运行速度是否比循环更快,但编写起来不那么繁琐。
编辑:显然strcat
处理单元格数组。使用cellfun
表示没有的功能。