Parse function arguments

版本 1.0.0.0 (1.9 KB) 作者: Aslak Grinsted
A useful tool for parsing function arguments like 'cellspacing',6,'monkey',1
5.5K 次下载
更新时间 2004/10/27

无许可证

Helper function for parsing varargin. Makes it easy to write functions that take arguments like this: subaxis(4,2,1,'spacing',0,'marginleft',.1,'H','pt',.1)


ArgStruct=parseArgs(varargin,ArgStruct[,FlagtypeParams[,Aliases]])

* ArgStruct is the structure full of named arguments with default values.
* Flagtype params is params that don't require a value. (the value will be set to 1 if it is present)
* Aliases can be used to map one argument-name to several argstruct fields


example usage:
--------------
function parseargtest(varargin)

%define the acceptable named arguments and assign default values
Args=struct('Holdaxis',0, ...
'SpacingVertical',0.05,'SpacingHorizontal',0.05, ...
'PaddingLeft',0,'PaddingRight',0,'PaddingTop',0,'PaddingBottom',0, ...
'MarginLeft',.1,'MarginRight',.1,'MarginTop',.1,'MarginBottom',.1, ...
'rows',[],'cols',[]);

%The capital letters define abrreviations.
% Eg. parseargtest('spacingvertical',0) is equivalent to parseargtest('sv',0)

Args=parseArgs(varargin,Args, ... % fill the arg-struct with values entered by the user
{'Holdaxis'}, ... %this argument has no value (flag-type)
{'Spacing' {'sh','sv'}; 'Padding' {'pl','pr','pt','pb'}; 'Margin' {'ml','mr','mt','mb'}});

disp(Args)

引用格式

Aslak Grinsted (2026). Parse function arguments (https://ww2.mathworks.cn/matlabcentral/fileexchange/3448-parse-function-arguments), MATLAB Central File Exchange. 检索时间: .

MATLAB 版本兼容性
创建方式 R12
兼容任何版本
平台兼容性
Windows macOS Linux
类别
Help CenterMATLAB Answers 中查找有关 Argument Definitions 的更多信息
版本 已发布 发行说明
1.0.0.0

Improved flag parameter functionality.