Info
This question is closed. Reopen it to edit or answer.
How do I get the index of the element that's the start of an embedded vector within a longer vector? Order mainintained.
1 view (last 30 days)
Show older comments
For example, in the containing vector (1 2 4 7 6 9 5 3 4 6 7 12 10) I would like to get the index of the first occurrence of the target (4 6 7) which is 9 not 3. I think ismember would give me 5.
1 Comment
Answers (3)
Star Strider
on 25 Nov 2017
The strfind function will give you 9:
v = [1 2 4 7 6 9 5 3 4 6 7 12 10];
t = [4 6 7];
idx = strfind(v, t)
idx =
9
1 Comment
Andrei Bobrov
on 25 Nov 2017
v = [1 2 4 7 6 9 5 3 4 6 7 12 10];
[~,ii] = ismember([4,6,7],hankel(v(1:end-2),v(end-2:end)),'rows');
1 Comment
This question is closed.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!