MATLAB删除字符数组中空格元素

在编写Huffman信道编码时遇到的问题,字符型数组中有空格元素,删除空格元素并转换为数字数组。
关键是这两句,-16是空格键的ascii码减去‘0‘的ascii码的值,也就是转换完以后空格字符的值。

W=double(W)-double('0')
W(find(W==-16))=[];

话不多说,直接看效果
原数组

' 1 000 01 0011 0010' 转换后效果
 1     0     0     0     0     1     0     0     1     1     0     0     1     0
                    MATLAB删除字符数组中空格元素在编写Huffman信道编码时遇到的问题,字符型数组中有空格元素,删除空格元素并转换为数字数组。关键是这两句,-16是空格键的ascii码减去‘0‘的ascii码的值,也就是转换完以后空格字符的值。W=double(W)-double('0')W(find(W==-16))=[];话不多说,直接看效果原数组w =    '    1  000   01 0011 0010'``转换后效果w = 1     0     0     0     
				
现有一个1*20196的cell数组a,想删除元素(其实我也不知道那个究竟是不是元素,它显示的是“  [] ”),求问该怎么写。 我写的代码如下: for i=1:length(a)         k=isequal(a(i),{[]});         if(k==1)                 a(i)=[]; 解决方案:
可以使用 cellstr 函数将一个普通的字符串数组转换为一个 cell 数组,每个 cell 包含一个字符串。例如: strs = ["hello", "world", "foo", "bar"]; cells = cellstr(strs); 现在 cells 包含了四个 cell,分别包含 "hello"、"world"、"foo" 和 "bar" 这四个字符串。