Преобразуйте символьные массивы в строковые массивы, оставив другие массивы неизменными
При работе с собственным кодом можно использовать convertCharsToStrings
заставить ваш код принять символьные массивы. Затем вы не должны вносить никакие другие изменения, чтобы закодировать вас, записал, чтобы работать со строковыми массивами.
[B1,...,Bn] = convertCharsToStrings(A1,...,An)
преобразует любые символьные массивы или массивы ячеек из символьных векторов в A1,...,An
к строковым массивам, и затем возвращает их как соответствующие выходные аргументы в B1,...,Bn
. Если любой из аргументов A1,...,An
имеет любой другой тип данных, затем convertCharsToStrings
возвращает его неизменный.
Чтобы включить код, который работает со строками, чтобы принять символьные массивы как входные параметры, добавьте вызов convertCharsToStrings
в начале вашего кода.
Например, если вы задали функциональный myFunc
это принимает три входных параметра, процесс все три входных использования convertCharsToStrings
. Оставьте остальную часть вашего кода неизменной.
function y = myFunc(a,b,c) [a,b,c] = convertCharsToStrings(a,b,c); <line 1 of original code> <line 2 of original code> ...
В этом примере, выходные аргументы [a,b,c]
перезапишите входные параметры на месте. Если какой-либо входной параметр не является символьным массивом или массивом ячеек из символьных векторов, то это неизменно.
Если myFunc
принимает переменное количество входных параметров, затем процесс все аргументы, заданные varargin
.
function y = myFunc(varargin) [varargin{:}] = convertCharsToStrings(varargin{:}); ...
convertCharsToStrings
функция более эффективна при преобразовании одного входного параметра. Если эффективность является беспокойством, то вызовите convertCharsToStrings
на одном входном параметре за один раз, вместо того, чтобы вызвать его однажды на нескольких входных параметрах.
convertContainedStringsToChars
| convertStringsToChars
| iscellstr
| ischar
| ismissing
| isstring
| isStringScalar
| string
| varargin