我有两个单元格,第一列为字符串。我目前正在使用ismember
来匹配两个单元格中的第一列元素。但是ismember区分大小写。我无法使用strcmpi,因为单元的大小不相等。您能建议另一种方法吗?
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]
谢谢!
最佳答案
函数 lower
和 upper
在字符串的单元格数组上运行,因此您可以在调用 ismember
之前使用它们将字符串转换为大写或小写形式:
>> tf = ismember(lower(cell1(:, 1)), lower(cell2(:, 1)))
tf =
0
1 % <-- there's the 1 you want!
0