How can I use InputParser with multiple argument names?

1 view (last 30 days)
I would like to use InputParser with multiple possible argument syntax for the same argument. For instance, to have shorter versions, e.g. that I can do:
do_something('factor',2)
and
do_something('f',2)
with the same result. I tried to use InputParser with cell arrays or char arrays but that does not work. Does someone know how to do this?

Accepted Answer

Steven Lord
Steven Lord on 11 Jan 2018
Set the PartialMatching property of your inputParser instance to true.

More Answers (1)

Fangjun Jiang
Fangjun Jiang on 11 Jan 2018
Edited: Fangjun Jiang on 11 Jan 2018
Since "PartialMatching" is true by default, do_something('f',2) is same as do_something('factor',2) if you don't have another parameter name starting with 'f'. In that case, you don't need to do anything extra in terms of InputParser.
If you do have multiple parameter names starting with 'f', I would specify both 'factor' and 'f' as optional argument. Inside the function, you can have processing to treat the parameters the same. But I guess it will not work if the argument is required.

Categories

Find more on Argument Definitions in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!