- start with a letter, otherwise assigning to that field will error
- contain only letters, numbers, and/or the underscore character, otherwise assigning to that field will error, and
- must be no longer than namelengthmax (currently 63) characters, otherwise you will receive a warning and the field name will be truncated
MATLAB invalid field name
303 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Paolo
am 8 Jun. 2017
Beantwortet: Steven Lord
am 8 Jun. 2017
Hello, I am trying to create the following structure
data2.TEST.('MY/FIELD')=100
receiving the following error
Invalid field name: 'MY/FIELD'
I guess the error is related to the use of "/" character in the field name. Any suggestion about how to solve this and maintain the field name with "/" ?
thank you P
0 Kommentare
Akzeptierte Antwort
Steven Lord
am 8 Jun. 2017
Field names in MATLAB struct arrays must satisfy three of the four criteria of a valid variable name as listed in the help for the isvarname function. They must:
It is possible to assign to a field whose name is a keyword, though I would advise against it unless absolutely necessary. And trying to save that struct with the -struct option probably won't work, or if it does trying to load that MAT-file will likely cause a headache for you in the future.
S = struct;
S.end = 42
To convert your potential field name into one that is valid, consider using matlab.lang.makeValidName and potentially matlab.lang.makeUniqueStrings.
0 Kommentare
Weitere Antworten (1)
dpb
am 8 Jun. 2017
" how to solve this and maintain the field name with "/" ?"
No can do. The '/' is simply not an allowable character in a variable/field name and there's no getting around it. Use something else.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Structures 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!