Создайте допустимые идентификаторы MATLAB из входных строк
создает допустимый MATLAB® идентификаторы, N
= matlab.lang.makeValidName(S
)N
, от входных строк, S
. makeValidName
функция не гарантирует строки в N
уникальны.
Допустимый идентификатор MATLAB является вектором символов буквенно-цифрового индикатора (A–Z, a–z, 0–9) и символы нижнего подчеркивания, такие, что первый символ является буквой, и длина вектора символов меньше чем или равна namelengthmax
.
makeValidName
удаляет любые пробельные символы прежде заменяющий любые символы, которые не являются буквенно-цифровым индикатором или символами нижнего подчеркивания. Если пробельный символ сопровождается строчной буквой, makeValidName
преобразует букву соответствующему символу верхнего регистра.
включает дополнительные опции, заданные одним или несколькими N
= matlab.lang.makeValidName(S
,Name,Value
)Name,Value
парные аргументы.
Чтобы гарантировать, что входные значения допустимы и уникальны, использовать matlab.lang.makeUniqueStrings
после matlab.lang.makeValidName
.
S = {'my.Name','my_Name','my_Name'}; validValues = matlab.lang.makeValidName(S) validUniqueValues = matlab.lang.makeUniqueStrings(validValues,{},... namelengthmax)
validValues = 'my_Name' 'my_Name' 'my_Name' validUniqueValues = 'my_Name' 'my_Name_1' 'my_Name_2'
Чтобы настроить замену недопустимого символа, сначала используйте функции, такие как strrep
или regexprep
преобразовывать в допустимые символы. Например, преобразуйте '@'
символы в S
к 'At'
использование strrep(S,'@','At')
. Затем используйте matlab.lang.makeValidName
гарантировать что все символы в S
допустимы.
matlab.lang.makeUniqueStrings
| isvarname
| iskeyword
| isletter
| namelengthmax
| who
| strrep
| regexp
| regexprep