how to match sub string with main string in a cell array??

Hi,
I have a cell array as below
cell_arr=
sub string as b = {'hard'}
If sub string matches with column1 i.e., cell_arr{:,1}, only that particular column2 has the value else it must be empty. i tried a lot with this.
out =
I am attaching the sample code here
a = {'hard';'smart';'hard drive';'smart work';'hark disk';'hard drive'};
b = {0.1;0.2;0.4;0.7;0.8;0.9};
cell_arr=[a,b];
out= cell_arr(strcmp(cell_arr,'hard'),:);
Please help me if any idea on this.

1 件のコメント

madhan ravi
madhan ravi 2019 年 4 月 5 日
15 questions asked 46 answers answered yet you post a photo instead of code.

サインインしてコメントする。

 採用された回答

Jan
Jan 2019 年 4 月 5 日
編集済み: Jan 2019 年 4 月 5 日

0 投票

With modern Matlab versions >= R2016b:
a = {'hard';'smart';'hard drive';'smart work';'hark disk';'hard drive'};
b = {0.1;0.2;0.4;0.7;0.8;0.9};
c = [a,b];
% If the substring should be existing anywhere:
c(~contains(c(:,1), 'hard'), 2) = {[]};
% or if the substring should appear at the start:
c(~startsWith(c(:,1), 'hard'), 2) = {[]};

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeCharacters and Strings についてさらに検索

質問済み:

2019 年 4 月 5 日

編集済み:

Jan
2019 年 4 月 5 日

Community Treasure Hunt

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

Start Hunting!

Translated by