How can I return indices for specific strings found within cells of a cell array?
    조회 수: 9 (최근 30일)
  
       이전 댓글 표시
    
Hi all!
I have a cell array where each cell has a three letter identification, i.e. 'ABC'
I was wondering if there was a function, or a simple way, of returning indices for specific strings within the cell array, i.e. if I want to find all cells within the array that have 'ABC'. Similar to the find function.
I've written the following function below, and it works, however; it doesn't seem completely efficient.
function Result = pullIndices(charArray, String)
    x = 1 ;
    Result = NaN(1, length(charArray)) ;
    for i = 1:length(charArray)
        if strcmp(charArray{i}, String)
            Result(x) = i ;
            x = x + 1;
        end
    end
    Result = Result(1, 1:x-1) ;
end
Thanks!
댓글 수: 0
채택된 답변
  Walter Roberson
      
      
 2016년 4월 9일
        pullIndices = @(charArray, String) find( strcmp(charArray, String) );
Single short anonymous function.
추가 답변 (1개)
참고 항목
카테고리
				Help Center 및 File Exchange에서 Characters and Strings에 대해 자세히 알아보기
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


