我從文字掃描獲得的細胞,我想找到包含特定字符串的行的索引,如何找到在同一條線上兩個不同的字符串在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