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

4 visualizaciones (últimos 30 días)
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.

Respuesta aceptada

James Tursa
James Tursa el 17 de En. de 2020
Editada: James Tursa el 17 de En. de 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'}))

Más respuestas (0)

Categorías

Más información sobre Characters and Strings en Help Center y File Exchange.

Productos


Versión

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by