2016-05-13 85 views
1

認爲我有這個字符串如何刪除重複的單詞在字符串中的MATLAB

a='flexray_datain_flexray_sensors' 

,我要處理這個字符串來獲得

a='flexray_datain_sensors' 

而且事情是這樣可以爲任何重複單詞而不僅僅是flexray在matlab中。如果我已經知道這個詞是什麼,然後很容易

我想:

parts = textscan(bypname , '%s', 'delimiter', '_'); 
    parts = parts{:}; 

,然後處理採用獨有或東西,去掉重複的單詞本小區(部分)。但我需要一個更好的答案。

+1

如何定義一個詞?用連字符('_')分隔單詞嗎? – kkuilla

+0

不一定,它也可以是ebct2_o_ebct1,這可以是一個完整的詞@kkuilla –

+0

嘗試使用'strsplit'和'unique'? – Dan

回答

3

這是否適合您?

strjoin(unique(strsplit(a,'_'),'stable'),'_') 
+0

完美。這是我正在尋找的。比我的方式更優雅 –