how to find a string within a cell array

4 views (last 30 days)
I have a cell array like this:
'10 Hz: Time_abs'
<1x2 cell>
<1x2 cell>
<1x2 cell>
<1x2 cell>
<1x2 cell>
<1x2 cell>
<1x2 cell>
'10 Hz: Time_abs'
<1x2 cell>
<1x2 cell>
<1x2 cell>
at first I need to find in which rows there is '10 Hz: Time_abs' and then delete the corresponding row. I can not use strcmp or isstr because the other rows are cell and are not comparable with a string.
can anybody help me with that,I really appreciate that.
best, Navid
  1 Comment
Geoff Hayes
Geoff Hayes on 27 Apr 2014
Why not iterate over each element within the cell array and copy those that aren't strings (that match '10 Hz: Time_abs') to another cell array?

Sign in to comment.

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 27 Apr 2014
p='10 Hz: Time_abs'
A={'10 Hz: Time_abs';{'yytt' 'rr'};{'yyt2t' 'rr1'}}
A(cellfun(@(x) any(strcmp(x,p)),A))=[]
  3 Comments
Azzi Abdelmalek
Azzi Abdelmalek on 27 Apr 2014
p='10 Hz: Time_abs'
A={'10 Hz: Time_abs';{'yytt' 'rr'};{'yyt2t' 'rr1'}}
idx=find(cellfun(@(x) any(strcmp(x,p)),A))
Navid
Navid on 27 Apr 2014
I really appreciate your help,thanks

Sign in to comment.

More Answers (0)

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!