删除单元格数组中字符串中的重复字符

时间:2015-07-07 08:31:38

标签: string matlab cell-array

我有一个像这样的单元格数组:

Input = {'CEEEGH';'CCEEG';'ABCDEFF';'BCFGG';'BCDEEG';'BEFFH';'AACEGH'}

如何删除所有重复的字符,并且只在输入中的每个字符串中保留1个字符?预期的输出应该是这样的:

Output = {'CEGH';'CEG';'ABCDEF';'BCFG';'BCDEG';'BEFH';'ACEGH'}

1 个答案:

答案 0 :(得分:9)

使用:

cellfun(@unique,input,'UniformOutput',0)



ans = 

'CEGH'
'CEG'
'ABCDEF'
'BCFG'
'BCDEG'
'BEFH'
'ACEGH'

编辑:

如果字母未排序,为了节省排序,如@thewaywewalk评论,您可以使用:

cellfun(@(x) unique(x,'stable'),input,'UniformOutput',0)