0

输入

1001001110

预期输出

[1 0 0 1 0 0 1 1 1 0]

Ps 一些正则表达式regexp('1001001110',[10])可能可以做到这一点,但需要不可替换的令牌。

4

2 回答 2

4
array = ismember(binarynumber,'1')

例如

A = ismember('1010','1')

返回

1 0 1 0

虽然是逻辑,但您可以使用double(A). 对您的方法的改进是,假设您想要这个,您可以直接获取数字而不是字符。

和向后:

binary = sprintf('%d',A)

返回:

B = 
     1010
于 2013-10-26T17:06:56.277 回答
0

正则表达式,但 ismember 在另一个答案中更好。

>> a=regexp('1001001110','[^a]','match')

a = 

  Columns 1 through 9

    '1'    '0'    '0'    '1'    '0'    '0'    '1'    '1'    '1'

  Column 10

    '0'

不要使用Dec2bin然后上面的,而是直接使用de2bi

>> de2bi(12)

ans =

     0     0     1     1
于 2013-10-26T16:55:36.633 回答