Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

addRequired

Add required, positional argument into input parser scheme

Syntax

addRequired(p,argName)
addRequired(p,argName,validationFcn)

Description

example

addRequired(p,argName) adds a required, positional input argument argName into the input parser scheme p.

example

addRequired(p,argName,validationFcn) specifies a validation function for the input argument.

Examples

collapse all

Create an inputParser object and add a required input named myinput to the input scheme.

p = inputParser;
argName = 'myinput';
addRequired(p,argName)

Call the parse function with the input value 7, and display the results.

parse(p,7)
p.Results
ans = struct with fields:
    myinput: 7

Create an input parser scheme that checks that a required input is a nonnegative, numeric scalar. The syntax @(x) creates a handle to an anonymous function with one input.

p = inputParser;
argName = 'num';
validationFcn = @(x) (x > 0) && isnumeric(x) && isscalar(x);
addRequired(p,argName,validationFcn)

Parse an invalid input, such as -1:

parse(p,-1)
The value of 'num' is invalid. It must satisfy the function: @(x)(x>0)&&isnumeric(x)&&isscalar(x).

Create an inputParser object and define a validation function using validateattributes. The validation function tests that a required input is numeric, positive, and even.

p = inputParser;
argName = 'evenPosNum';
validationFcn = @(x) validateattributes(x,{'numeric'},...
    {'even','positive'}); 
addRequired(p,argName,validationFcn)

Parse an input character vector. Parse fails because the input is invalid.

parse(p,'hello')
The value of 'evenPosNum' is invalid. Expected input to be one of these types:

double, single, uint8, uint16, uint32, uint64, int8, int16, int32, int64

Instead its type was char.

Parse an odd number. Parse fails because the input is invalid.

 parse(p,13)
The value of 'evenPosNum' is invalid. Expected input to be even.

Parse an even, positive number. Parse passes.

parse(p,42)

Input Arguments

collapse all

Input parser scheme, specified as an inputParser object.

Name of the input argument, specified as a character vector or string scalar.

Example: "firstName"

Example: 'address'

Data Types: char | string

Function to validate an argument, specified as a function handle.

The function handle must be associated with a function that either returns true or false or passes a test or throws an error. Both types of functions must accept a single input argument.

Example: @(s)isstring(s)

Example: @(x)isnumeric(x)&&isscalar(x)

Example: @(n)validateattributes(n,{'numeric'},{'nonnegative'})

Data Types: function_handle

Introduced in R2007a

Was this topic helpful?