Accepting Multiple String Inputs

5 vues (au cours des 30 derniers jours)
kenny
kenny le 7 Juin 2013
Hey! so i'm trying to condense some code i wrote yesterday into something more compact. the first step is just running a while loop that runs a program i made (called stuff.m) if the statement is true. but i want it to be able to accept a big selection of inputs, it's not happy with my choice of "strcmp(elmnt,'fine','good'))". any ideas?
thanks!
elmnt = input('how are you? ','s');
while (strcmp(elmnt,'fine','good'))
run stuff
end

Réponse acceptée

Iain
Iain le 7 Juin 2013
use strcmpi instead, if you want to make sure your user will type those strings as stated. put your "accepted" strings into a cell array:
Accepted = {'fine','good','great','fantastic','fan-dabby-dozy'};
while any(strcmpi(elmnt, Accepted))
run stuff
end
Look up strfind/findstr/regexp to see if theres a better way of doing what you want to.
  3 commentaires
Iain
Iain le 7 Juin 2013
Did you use "{" and "}" on the accepted line?
kenny
kenny le 7 Juin 2013
oh! i'm an idiot and misspelled "accepted". i really appreciate your help, thank you.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Characters and Strings dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by