Создайте действительные идентификаторы MATLAB из входных строк
создает действительные MATLAB® идентификаторы, N
= matlab.lang.makeValidName(S
)N
, из входных строк, S
. The 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
действительны.
iskeyword
| isletter
| isvarname
| matlab.lang.makeUniqueStrings
| namelengthmax
| regexp
| regexprep
| strrep
| who