看板 MATLAB 關於我們 聯絡資訊
假設我有一個6x1的cell array 每一個cell的內容都是一個字串 假設如下: 'xxx_cat_xxx' 'xxx_chicken_xxx' 'xxx_cat_xxx' 'xxx_chicken_xxx' 'xxx_cat_xxx' 'xxx_chicken_xxx' 我想把名字有cat的提出來 目前我想到的方法只有用for迴圈 每一個loop用一次strfind(cell_name{n}, 'cat')來判斷 但能不能直接處理整個array啊 我是希望能跑出一個logical array類似 1(true) 0(false) 1 0 1 0 之類的 我也有試過直接用strfind(cell_name, 'cat') 結果會出現一個6x1 cell array如下: 5 [] 5 [] 5 [] 之後我還是要用for loop來一個一個判斷...... 不知道大家有沒有想到什麼方法可以解決這問題 還請各位大大指教...... 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.109.135.192
jeffppp:~cellfun(@isempty,regexp(C,'cat')); 假設C是你的矩陣 01/20 12:30
jeffppp:說錯 C是你的cell 01/20 12:30
kurt28:推樓上的方法 用cellfun + isempty一起去判斷 01/20 12:32
KingSteven:喔喔感謝,我都忘了有cellfun這招XDDDDDD 01/20 13:57