|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
( d% R, g7 O( y2 V转换成字符串之后用正则表达式进行匹配! F9 O" l1 E. S& {* u
- A = [0 0 0 1 1 1 0 1 1 0 0 1 1 1 0 0 0 1];
- Ach = num2str(A); Ach(Ach==' ') = []; %将A转换为字符串
- [ind,indEnd] = regexp(Ach,'1*','start','end'); %匹配字符串连续1的位置
- num = indEnd-ind+1;( l+ h! T- Y% [4 O8 q9 _
0 s3 g- `! \8 I, W& n' i
很多这种统计向量中数的问题都可以转化为检测连续1出现次数,例如统计向量A中连续数字出现的位置和次数,A = [21,23,25,27,28,29,30,31,33,35,36,38,47,55], 那么进行一次转换:k = diff(A)==1,就可以得到 k = [0 0 0 1 1 1 1 0 0 1 0 0 0],其中 k 中连续1出现的位置是 A 中连续数字出现的位置,k中连续1出现的次数加1就是 A 中连续数字出现的次数。
1 P% m( n( D0 g" K9 F |
|