How can I compare the multiple strings?

15 Ansichten (letzte 30 Tage)
BHARAT CHARAN GOUD MARUPALLI
I am unable to compare the multiple strings at once to produce the required output. I have tried the following code. Here I would like to compare the input string and print the result from statements.
function result = select(sports)
sports = {'hockey','tennis'};_
if strcmpi(sports,'hockey');x=1;end
if strcmpi(sports,'cricket');x=2;end
if strcmpi(sports,'football');x=3;end
if strcmpi(sports,'tennis');x=4;end
result
end
  2 Kommentare
Rik
Rik am 10 Jan. 2021
What is your actual goal? I presume sports={'hockey','tennis'} is actually meant to be the input to your function (instead of overwriting it). If so, what do you want the output to be?
BHARAT CHARAN GOUD MARUPALLI
Bearbeitet: BHARAT CHARAN GOUD MARUPALLI am 11 Jan. 2021
Thanks for your response. Yes, the input is sports = {'hockey', 'tennis'} and I want the output as [1 4]. I am trying to assign the values to the multiple strings in a matrix form. I am able to do it for a single string, but I want to do it for multiple strings (but not all) at once.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Image Analyst
Image Analyst am 10 Jan. 2021
Is this what you want (using ismember to find the index of the sport in the list of all the sports?
% Test script:
fprintf('Beginning to run %s.m ...\n', mfilename);
allSports = {'hockey','tennis', 'cricket', 'football', 'racing', 'golf', 'Cody'};
thisSport = 'Football';
result = select(thisSport, allSports)
fprintf('%s is sport #%d.\n', thisSport, result);
fprintf('Done running %s.m.\n', mfilename);
%======================================================
function result = select(thisSport, allSports)
thisSport = lower(thisSport);
allSports = lower(allSports);
[~, result] = ismember(thisSport, allSports)
end
  5 Kommentare
Image Analyst
Image Analyst am 11 Jan. 2021
Please attach the Sports table in a .mat file if you still need help
save('answers.mat', 'Sports');
By the way, select is a built-in function so you might want to call it something else, like SelectSport() instead.
BHARAT CHARAN GOUD MARUPALLI
Thank you Rik and Image Analyst, it solved my problem.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Characters and Strings finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by