Функции, перечисленные в этой таблице, обеспечивают много способов преобразовать символьные массивы в числовые данные.
Функция | Описание | Пример |
|---|---|---|
| Преобразуйте символ в целочисленный код, который представляет тот символ. |
|
Преобразуйте тип символов в числовой тип. | '72 105' → [72 105] | |
Подобно | "72" "105" → [72 105] {'72' '105'} → [72 105] | |
Преобразуйте числовой тип в тип символов заданной точности, возвратив символьный массив, который может оценить MATLAB®. |
| |
Преобразуйте тип символов шестнадцатеричной основы к положительному целому числу. |
| |
Преобразуйте тип символов двоичного числа к десятичному числу. | '1010' → 10 | |
Преобразуйте тип символов любого основания системы счисления от 2 до 36 до десятичного числа. |
|
Символьные массивы и строковые массивы хранят каждый символ как 16-битное числовое значение. Используйте одну из целочисленных функций преобразования (например, uint8) или функция double, чтобы преобразовать символы в их числовые значения и char, чтобы вернуться к символьному представлению:
name = 'Thomas R. Lee';
name = double(name)
name =
84 104 111 109 97 115 32 82 46 32 76 101 101
name = char(name)
name =
'Thomas R. Lee'
Используйте str2num, чтобы преобразовать символьный массив в числовое значение, которое он представляет:
chr = '37.294e-1';
val = str2num(chr)
val =
3.7294
Функция str2double преобразовывает массив строк или массив ячеек из символьных векторов к значениям с двойной точностью, которые они представляют:
c = {'37.294e-1'; '-58.375'; '13.796'};
str = string({'3.14159','2.718'});
d = str2double(c)
d =
3.7294
-58.3750
13.7960
x = str2double(str)
x =
3.1416 2.7180
whos
Name Size Bytes Class Attributes
c 3x1 380 cell
d 3x1 24 double
str 1x2 196 string
x 1x2 16 double
Чтобы преобразовать от символьного представления недесятичного номера к значению того номера, используйте одну из этих функций: hex2num, hex2dec, bin2dec или base2dec.
hex2num и функции hex2dec оба берут шестнадцатеричный (базируйтесь 16), входные параметры, но hex2num возвращает IEEE® число с плавающей запятой с двойной точностью, которое это представляет, в то время как hex2dec преобразовывает в десятичное целое число.