我从文字扫描获得的细胞,我想找到包含特定字符串的行的索引,如何找到在同一条线上两个不同的字符串在MATLAB
fid = fopen('data.txt');
E = textscan(fid, '%s', 'Delimiter', '\n');
,我想知道行具有特定文本的那些行的数字(索引),例如我想找到的关键字是“2016”的行:
rows = find(contains(E{1},"2016");
,但我想找到那些具有两个关键字“2016”和“马修·派瑞”线的指标(仅具有这两个线关键字)。
我尝试使用此代码,但不工作
rows = find(contains(E{1},"2016" && contains(E{1},"Mathew Perry");
我得到的错误是:
操作数的||和& &运算符必须可转换为逻辑标量值。
取代''||以'|'和''&&用'&' – EBH
你在你的代码中的一些错误,这些错误我假设只是质疑错别字,而不是在你的实际代码 - 缺少右括号所有的你的'包含'功能!有关EBH所说的更多信息以及'&'和'&&'之间的区别,请参阅[documentation](https://uk.mathworks.com/help/matlab/ref/and.html#bu46s7m-4) – Wolfie