2013-05-07 214 views
0

假設我有一系列的字符串,如:連接字符串

a = '101010101010' 
b = '010101' 
c = '000101010' 

有在Matlab的方式將它們串聯併產生二進制數 101010101010010101000101010?

+0

你想級聯的二進制字符串或級聯的二進制字符串的十進制值? (如果是後者,你可以使用'bin2dec'函數結合任何OP的答案。) – wakjah 2013-05-07 19:06:31

+0

是啊不清楚你想要什麼,也許是一個邏輯的矢量?即:'[a,b,c] - '0'' – Amro 2013-05-07 19:24:37

+0

我需要連接的字符串,比如說d = strcat(a,b,c)是一個二進制數,而不是strcat輸出的十進制等效數 – Bob 2013-05-07 19:51:08

回答

0

我認爲這應該工作:

res = [a,b,c] 

或者您也可以致電

res = strcat(a,b,c)

或還

res = cat(2,a,b,c)

0

來連接字符串,你可以說:

out = [a b c]; 

或者:

out = strcat(a,b,c); 

還有一種方法:

out = sprintf('%s', a,b,c); 
1

使用連接運算符[ ],與橫向拼接,(垂直串聯;會失敗的,除非你reshape()成列向量):

[a,b,c] 

不過,我建議你存儲中的變量單元陣列:

s = {'101010101010','010101', '000101010'}; 
[s{:}] 

cat(2,s{:})