input parser on a cell array
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Paul Mitchell
am 27 Feb. 2023
Bearbeitet: Paul Mitchell
am 27 Feb. 2023
I have an input cell array example A = {'1234','4567','8901'}
I wish to user the input parser addParameter to check each entry is a string, and also each string is only composed of a set of 4 numbers
is there anyway in which to do this ? I have been searching Help and Answers but cannot find anything
Thank You
0 Kommentare
Akzeptierte Antwort
Rik
am 27 Feb. 2023
You can implement a custom validationFcn to check your requirements, as you can read in the documentation.
A = {'1234','4567','8901'};
fcn = @(A) ...
iscellstr(A) && ...
size(vertcat(A{:}),2)==4 && ...
all(isstrprop([A{:}],'digit'));
fcn(A)
fcn({'1abc','1234'})
3 Kommentare
Rik
am 27 Feb. 2023
Bearbeitet: Rik
am 27 Feb. 2023
From what I can tell from the documentation, a fail is interpreted as invalid input, so my function should work. Although it is indeed more elegant to have this function not fail.
If any of those chars is a column vector this code will still return an error.
So perhaps:
all(cellfun('size',A,2)==4) && all(cellfun('size',A,1)==1)
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Simulink Functions finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!