Accepting Multiple String Inputs

4 visualizzazioni (ultimi 30 giorni)
kenny
kenny il 7 Giu 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

Risposta accettata

Iain
Iain il 7 Giu 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 Commenti
Iain
Iain il 7 Giu 2013
Did you use "{" and "}" on the accepted line?
kenny
kenny il 7 Giu 2013
oh! i'm an idiot and misspelled "accepted". i really appreciate your help, thank you.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Characters and Strings in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by