2011-05-03 70 views
2

我有兩個單元格,第一列是字符串。我目前使用ismember來匹配兩個單元格中的第一列元素。但是,成員是區分大小寫的。我不能使用strcmpi,因爲單元格大小不一。你能提出另一種方法嗎?在MATLAB中不區分大小寫'ismember'使用

cell1 = { 'AAPL' [2001] ; 'GOOG' [1999] ; 'MSFT' [2010] } ; 

cell2 = { 'AMZN' [2009] ; 'HP' [2011] ; 'CSC' [2005] ; 'Goog' [2010] } ; 

不區分大小寫的方法:

tf = ismember(cell1(:,1), cell2(:,1)) ; % tf should be now [0; 1; 0] 

謝謝!

回答

5

功能LOWERUPPER是字符串的單元陣列操作,這樣你就可以使用它們調用ISMEMBER之前的字符串全部大寫或小寫轉換:

>> tf = ismember(lower(cell1(:,1)), lower(cell2(:,1))) 

tf = 

    0 
    1 %# <-- there's the 1 you want! 
    0