How to search for a string in cell array in MATLAB?
Date: 2023-03-23 10:50:36
To search for a string in a cell array in MATLAB, you can use the strcmp
or strcmpi
function.
The strcmp
function is used to compare two strings, and it returns 1 if they are equal, and 0 otherwise. The strcmpi
function works in the same way as strcmp
, but it ignores the case of the strings being compared.
Here's an example of how to use strcmp
or strcmpi
to search for a string in a cell array:
% Define a cell array of strings
cellArray = {'apple', 'banana', 'orange', 'pear'};
% Define the string to search for
searchString = 'orange';
% Use strcmp or strcmpi to search for the string in the cell array
% The result is a logical array that indicates which elements of the cell array match the search string
matches = strcmp(cellArray, searchString); % or strcmpi for case-insensitive search
% Find the indices of the matches
indices = find(matches);
% Display the results
disp(matches)
disp(indices)
In this example, the strcmp
function is used to compare each element of the cellArray
to the searchString
. The result is a logical array matches
that has a value of 1 for each element that matches the searchString
, and a value of 0 for each element that doesn't match. The find
function is then used to find the indices of the matches, which are stored in the indices
variable. Finally, the results are displayed using the disp
function.