MATLAB: Can i delete part of a cell array based on a condition

cell arrayerase

if i have a cell array such as {'CGU'} {'UUU'} {'UAG'} {'GGU'} can i
identify if there is a member of {'UAA','UAG','UGA'} and delete the
remaining elements? eg, leaving {'CGU'} {'UUU'} once {'UAG'} is identified.

Best Answer

E.g.,
>> C = {'CGU','UUU','UAG','GGU'}
C =
1×4 cell array
{'CGU'} {'UUU'} {'UAG'} {'GGU'}
>> X = {'UAA','UAG','UGA'}
X =
1×3 cell array
{'UAA'} {'UAG'} {'UGA'}
>> f = find(ismember(C,X),1)
f =
3
>> C(f+1:end) = []
C =
1×3 cell array
{'CGU'} {'UUU'} {'UAG'}