Matlab 特定数字的提取

Matlab 特定数字的提取,matlab,Matlab,如果字符串只有1(s)和2(s)的组合,如何提取所有2(s) 我尝试了下面的代码,但不起作用 C=textscan(trigs,'%2d.',2); 有人能给我指一下正确的方向吗?你可以这样得到所有2的位置: str = '11221212'; strfind(str,'2') 什么?只需在str中找到元素的位置,其中有一个'2'?我认为你没有那么努力,因为至少有几种方法我可以从头顶上看到 C = find(str == '2'); 或者 (也有findstr,但该工具显然会在某个时候过时

如果字符串只有1(s)和2(s)的组合,如何提取所有2(s)

我尝试了下面的代码,但不起作用

C=textscan(trigs,'%2d.',2);

有人能给我指一下正确的方向吗?你可以这样得到所有2的位置:

str = '11221212';
strfind(str,'2')

什么?只需在str中找到元素的位置,其中有一个'2'?我认为你没有那么努力,因为至少有几种方法我可以从头顶上看到

C = find(str == '2');
或者

(也有findstr,但该工具显然会在某个时候过时/被丢弃。)

或者

或者

我敢打赌还有更多的方法。浏览一下以下内容的输出:

help strfun

提取2s后,您到底想做什么?你想数一数,打印,删除所有其他字符吗?根据您想要执行的操作,可能会有许多不同且简单的命令。
S2=S1and2(S1and2='2')
C = regexp(str,'2')
C = find(ismember(str,'2'));
help strfun