Comparing Couple of Cell Array String

2 次查看(过去 30 天)
Hi, i want to compare a couple of cell array string. In example :
dataset = {
'i', 'love';
'love', 'you';
'you', 'so';
'so', 'much'
}
if i have below data test :
data_test = {'love', 'you'}
then i want to get below result (according dataset) :
'love' 'you'
Else if my data is like below :
data_test = {'love', 'much'}
Then i want to get below result (according dataset) :
'love' 'you'
So, the process is getting first word. Then getting squence of words in dataset that match with first word...
Is that possible?
Thanks in advance.

采纳的回答

Andrei Bobrov
Andrei Bobrov 2016-6-30
data = {
'i', 'love';
'love', 'you';
'you', 'so';
'so', 'much'
};
data_test = {'love', 'much'};
out = data(ismember(data(:,1),data_test(1)),:);
  1 个评论
Angga Lisdiyanto
Angga Lisdiyanto 2016-6-30
Thanks, this is what i am looking for.
The result is correct as according dataset words' squence.

请先登录,再进行评论。

更多回答(2 个)

KSSV
KSSV 2016-6-30

KSSV
KSSV 2016-6-30
clc; clear all
dataset = {
'i', 'love';
'love', 'you';
'you', 'so';
'so', 'much'
};
data_test = {'love', 'you'} ;
count = 0 ;
for i = 1:length(dataset)
for j = 1:length(data_test)
k = strcmp(dataset{i},data_test{j}) ;
if k
count = count+1 ;
iwant{count} = dataset{i};
end
end
end
iwant
  1 个评论
Angga Lisdiyanto
Angga Lisdiyanto 2016-6-30
编辑:Angga Lisdiyanto 2016-6-30
Hi, thanks for answering.
I have a problem, if my data_tes is :
data_test = {'love', 'so'}
then i am still got :
'love' 'so'
How to getting result 'love' 'you' ?

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Matrices and Arrays 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by