Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

str2double

将字符串转换为双精度值

说明

示例

X = str2double(str)str 中的文本转换为双精度值。str 包含表示实数或复数值的文本。str 可以是字符向量、字符向量元胞数组或字符串数组。如果 str 是字符向量或字符串标量,则 X 是数值标量。如果 str 是字符向量元胞数组或字符串数组,则 X 是与 str 具有相同大小的数值数组。

表示数值的文本可以包含数字、逗号(千位分隔符)、小数点、前导 +- 符号、以 10 为缩放因子的幂前面的 e 以及复数单位的 ij。不能使用句点作为千位分隔符或使用逗号作为小数点。

如果 str2double 不能将文本转换为数值,则它将返回 NaN 值。

示例

全部折叠

将表示数值的字符向量转换为双精度值。您还可以将字符向量元胞数组转换为相同大小的数值数组。

将字符向量转换为实数。

X = str2double('3.1416')
X = 3.1416

转换使用指数记数法表示数值的字符向量。

X = str2double('2.998e8')
X = 299800000

转换使用逗号作为千位分隔符的字符向量。

X = str2double('1,200.34')
X = 1.2003e+03

将字符向量转换为复数。

X = str2double('3.14 + 2.7i')
X = 3.1400 + 2.7000i

将字符向量元胞数组转换为数值数组。

str = {'2.718','3.1416';
       '137','0.015'};
X = str2double(str)
X = 2×2

    2.7180    3.1416
  137.0000    0.0150

从 R2016b 开始,您可以使用 string 函数创建字符串数组。您可以使用 str2double 函数将字符串转换为数值。

创建表示数值的字符串。将其转换为数值标量。

str = "81470.5"
str = 
"81470.5"
X = str2double(str)
X = 8.1471e+04

创建表示数值的字符串数组。将其转换为大小相同的数值数组。

str = ["292.1" "139.44" ".241" "0" "100.245"]
str = 1x5 string
    "292.1"    "139.44"    ".241"    "0"    "100.245"

X = str2double(str)
X = 1×5

  292.1000  139.4400    0.2410         0  100.2450

输入参数

全部折叠

表示数值的文本,指定为字符向量、字符向量元胞数组或字符串数组。

扩展功能

另请参阅

| | | | | |

在 R2006a 之前推出