easyparse

版本 1.7.0.0 (2.0 KB) 作者: Jared
Easy-to-use interface for parsing function inputs in the form of parameter-value pairs.
508.0 次下载
更新时间 2013/1/15

查看许可证

Easy-to-use interface for converting parameter-value pairs into variables within a function. Unlike inputParser and other typical parameter-value parsers, easyparse is able to (and by default does) directly create variables within the called function, rather than as fields of a struct.

- To create variables in the function workspace according to varargin consisting of parameter-value pairs, use this syntax in your function:
easyparse(varargin);

- To create only variables with allowed_names, create a cell array of allowed names and use this syntax:
easyparse(varargin, allowed_names);

- To create a struct with fields specified by the names in varargin, (similar to the output of inputParser) ask for an output argument:
s = easyparse(...);

As an example, let's say you wanted a function, epdemo, that took inputs 'blee', 'bloo', and 'blah'. Then epdemo would be called with in the typical parameter value manner:
epdemo('blee', 1:10, 'blah', 4, 'bloo', 0);

To parse these inputs within epdemo requires a single line:

function epdemo(varargin)
easyparse(varargin,{'blee','bloo','blah'});

foo = blee*100;
bar = bloo - blah;
...
end

CAVEAT UTILITOR: this function relies on assignin statements. Input checking is performed to limit potential damage, but use at your own risk.

One of a series of simple functions to provide easier input parsing within MATLAB.

引用格式

Jared (2024). easyparse (https://www.mathworks.com/matlabcentral/fileexchange/39772-easyparse), MATLAB Central File Exchange. 检索时间: .

MATLAB 版本兼容性
创建方式 R2011b
兼容任何版本
平台兼容性
Windows macOS Linux
类别
Help CenterMATLAB Answers 中查找有关 Argument Definitions 的更多信息

Community Treasure Hunt

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

Start Hunting!
版本 已发布 发行说明
1.7.0.0

Improved input checks: now, easyparse warns you that it will not parse variables with names identical to already-defined functions to avoid unintended results.

1.6.0.0

Typo fixed.

1.5.0.0

Typo fixed.

1.4.0.0

Typo fixed.

1.3.0.0

Typo fixed.

1.2.0.0

Added demo to description.

1.0.0.0