any easier way to find cell by string
1 回表示 (過去 30 日間)
古いコメントを表示
Hi:
I have a cell array like below:
A{1}='test1a';
A{2}='test2a';
A{3}='test3a';
A{4}='test4a';
A{5}='test1b';
A{6}='test2b';
A{7}='test3b';
A{8}='test4b';
...
I want to find the location where 'test*a' are at, in this case, it should be 1,2,3,4
Yes, I can write a for-loop to read-justify cell in this array one by one, but I want know if there is any easier way to do this? such as
strfind(A,'test*a')
of course this is not available in Matlab
Thanks!
Yu
0 件のコメント
採用された回答
James Tursa
2019 年 5 月 15 日
編集済み: James Tursa
2019 年 5 月 15 日
Assuming the strings all start with 'test', e.g.
find(cellfun(@(C)C(end)=='a',A))
3 件のコメント
James Tursa
2019 年 5 月 15 日
Well, I think you would need to do something like this instead:
find(cellfun(@(C)numel(C)>4 && strcmp(C(1:4),'test') && C(end)=='a',A))
But really what is needed is an Answer from someone who knows regexp( ) well (and that isn't me).
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Logical についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!