Find the index of the first integer of an array in another array
조회 수: 1 (최근 30일)
이전 댓글 표시
Hi,
I want to find the index of the first integer of an array in another array. For example.
I have array A = [ 0 0 0 ] and I have array B= [ 1 2 3 4 0 0 0 5 6 7 0 0 8 9 ]
A = [ 0 0 0 ];
B= [ 1 2 3 4 0 0 0 5 6 7 0 0 8 9 ];
I want find the index of array B where array A starts. In this case array A starts from index 5 in array B.
So my outcome should be:
ans = 5
The thing I am looking for looks like find() but instead of finding just one value, I am searching for multiple values in succession of each other.
댓글 수: 0
채택된 답변
dpb
2020년 5월 1일
Easier to find repeated patterns with string pattern searches than as vector arrays--
ix=strfind(sprintf('%d',ismember(B,A)),repmat('1',1,numel(A)));
댓글 수: 2
Tommy
2020년 5월 1일
Using strfind is brilliant! To expand on this, if A happens to contain different values:
ix=strfind(sprintf('%d',B),sprintf('%d',A));
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Data Type Conversion에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!