command similar to setdiff for case insensitive

조회 수: 2 (최근 30일)
Gopalakrishnan venkatesan
Gopalakrishnan venkatesan 2015년 6월 25일
답변: Titus Edelhofer 2015년 6월 25일
Is there any command similar to setdiff for case insensitive. As setdiff is case sensitive?
for example a = {'car','book,'glass'}
b = {'CAr','book','glass'}
c = setdiff(a,b)
returns the same array a(because setdiff does not work for car insensitive)
how can i do this? because i have two cell array which is really large.
running in loop by strcmpi and finding the index will take some time.
is it possible to excute in single command as like setdiff?
Thank you

채택된 답변

Titus Edelhofer
Titus Edelhofer 2015년 6월 25일
Hi,
if two commands is fine as well, you can do the following:
% find index of elements in a that are in b:
[flag,idx] = ismember(lower(a), lower(b));
% remove the found elements:
a(idx(flag)) = [];
Titus

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Numeric Types에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by