如果我有這樣的事情:如何將MATLAB數組的所有元素合併到一個字符串中?
m = [0 1 0 0 1 1]
我希望把它變成
s = '010011'
在Python,它是那麼容易:
m = [0, 1, 0, 0, 1, 1]
s = ''.join(m)
# s = '010011'
我怎麼做,在MATLAB ?
如果我有這樣的事情:如何將MATLAB數組的所有元素合併到一個字符串中?
m = [0 1 0 0 1 1]
我希望把它變成
s = '010011'
在Python,它是那麼容易:
m = [0, 1, 0, 0, 1, 1]
s = ''.join(m)
# s = '010011'
我怎麼做,在MATLAB ?
請記住,Python會自動輸入轉換類型 - Matlab(和大多數其他語言)會更挑剔一些。因此,您需要在陣列的每個元素上手動進行類型轉換。我相信
myString = sprintf('%1d', m);
應該這樣做 - 雖然我不能真正檢查它,因爲我沒有在我的電腦在家裏的MATLAB。嘗試一下 - 告訴我,如果這不適合你。
我想的另一種方法可能是這樣的:
s=num2str(m);
s(s==' ')='';
或
s=regexprep(num2str(m),'[^\w]','')
爲什麼在你的正則表達式中'[^ \ w'']''而不僅僅是'[^ \ w]'? – Floris
其實是的,這將工作。 –
好極了!謝謝。我必須等待一點才能接受這個答案。 – Kit