MATLAB Answers

Does this character vector match any of the following character vectors?

1 view (last 30 days)
Sarah
Sarah on 17 Jan 2020
Commented: Sarah on 17 Jan 2020
How can I check to see if a particular character vector or string matches anything in a list of other character vectors/strings? For example, if the current month is June, July, or August, I want to call the current season Summer; if not, I want to call the current season notSummer. I tried this:
if strcmp(currentMonth,'June'||'July'||'August')
currentSeason = 'Summer'
else
currentSeason = 'NotSummer'
end
But it gives me the error message "Operands to the || and && operators must be convertible to logical scalar values."
I also tried it with just commas instead of ||, but it said I had too many input arguments for strcmp().
How can I compare strings in this way?
Thank you.

  0 Comments

Sign in to comment.

Accepted Answer

James Tursa
James Tursa on 17 Jan 2020
Edited: James Tursa on 17 Jan 2020
You could use cell arrays. E.g., use
ismember(currentMonth,{'June','July','August'})
instead of
strcmp(currentMonth,'June'||'July'||'August')
Or if you wanted a case insensitive check
any(strcmpi(currentMonth,{'June','July','August'}))

More Answers (0)

Sign in to answer this question.

Products


Release

R2018b