matlab中字符串转换为数字(str2double函数)
str2double函数
将 str 中的文本转换为双精度值。str 包含表示实数或复数值的文本。str 可以是字符向量、字符向量元胞数组或字符串数组。如果 str 是字符向量或字符串标量,则 X 是数值标量。如果 str 是字符向量元胞数组或字符串数组,则 X 是与 str 具有相同大小的数值数组。
表示数值的文本可以包含数字、逗号(千位分隔符)、小数点、前导 + 或 - 符号、以 10 为缩放因子的幂前面的 e 以及复数单位的 i 或 j。不能使用句点作为千位分隔符或使用逗号作为小数点。
如果 str2double 不能将文本转换为数值,则它将返回 NaN 值。
1.示例:将字符向量转换为实数。
str='52';
num=str2double(str);
disp(num);
输出结果
52
2.示例:转换使用指数记数法表示数值的字符向量。
str='2.998e8';
num=str2double(str);
disp(num);
输出结果
299800000
3.示例:转换使用逗号作为千位分隔符的字符向量。
str='1,200.34';
num=str2double(str);
disp(num);
输出结果
1.2003e+03
4.示例:将字符向量转换为复数。
str='3.14 + 2.7i';
num=str2double(str);
disp(num);
输出结果
3.1400 + 2.7000i
5.示例:将字符向量元胞数组转换为数值数组。
str={'2.718','3.1416';
'137','0.015'};
num=str2double(str);
disp(num);
输出结果
2.7180 3.1416
137.0000 0.0150