Does this character vector match any of the following character vectors?
4 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
James Tursa
2020-1-17
编辑:James Tursa
2020-1-17
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'}))
更多回答(0 个)
另请参阅
类别
在 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!