Remove cell that contains strings of another cell array
古いコメントを表示
Input:
a={'Time12:30','Time12:40','Time1:40', 'Time2:40'};
b={'12:', '1:'};
Wanted Output: (delete from "a" all cells containing string listed in "b")
a={'Time2:40'}
I have tried:
for k = 1 : length(a)
for kk = 1 : length(b)
if any(~ismember(b{kk}, a{k}))
a(k) = [];
break;
end
end
end
However this gives me error of such:
Index exceeds matrix dimensions.
I am confused by the error and any guidance is appreciated! Thank you for reading my post.
採用された回答
その他の回答 (2 件)
Stalin Samuel
2016 年 8 月 8 日
0 投票
strfind(a, b(kk))%find a string from string array
Sean Mahnken
2019 年 3 月 28 日
You should be able to just do the k loop backwards:
for k = length(a):-1:1
for kk = 1 : length(b)
if any(~ismember(b{kk}, a{k}))
a(k) = [];
break;
end
end
end
カテゴリ
ヘルプ センター および File Exchange で Loops and Conditional Statements についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!