Documentation

This is machine translation

Translated by
Mouse over text to see original. Click the button below to return to the English verison of the page.

str2double

Convert string to double precision value

Syntax

• ``X = str2double(str)``
example

Description

example

````X = str2double(str)` converts the text in `str` to double precision values. `str` contains text that represents real or complex numeric values. `str` can be a character vector, a cell array of character vectors, or a string array. If `str` is a character vector or string scalar, then `X` is a numeric scalar. If `str` is a cell array of character vectors or a string array, then `X` is a numeric array that is the same size as `str`.Text that represents a number can contain digits, a comma (thousands separator), a decimal point, a leading `+` or `-` sign, an `e` preceding a power of 10 scale factor, and an `i` or a `j` for a complex unit. You cannot use a period as a thousands separator, or a comma as a decimal point.If `str2double` cannot convert text to a number, then it returns a `NaN` value.```

Examples

collapse all

Convert character vectors that represent numbers to double precision values. You can also convert a cell array of character vectors to a numeric array of the same size.

Convert a character vector to a real number.

```X = str2double('3.1416') ```
```X = 3.1416 ```

Convert a character vector when it represents a number using exponential notation.

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

Convert a character vector that uses a comma as the thousands separator.

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

Convert a character vector to a complex number.

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

Convert a cell array of character vectors to a numeric array.

```str = {'2.718','3.1416'; '137','0.015'}; X = str2double(str) ```
```X = 2.7180 3.1416 137.0000 0.0150 ```

Starting in R2016b, you can create string arrays using the `string` function. You can convert strings to numbers using the `str2double` function.

Create a string that represents a number. Convert it to a numeric scalar.

```str = string('81470.5') ```
```str = string "81470.5" ```
```X = str2double(str) ```
```X = 8.1470e+04 ```

Create a string array representing numbers. Convert it to a numeric array that is the same size.

```str = string({'91.57','95.95','3.57'; '79.22','65.57','84.91'}) ```
```str = 2×3 string array "91.57" "95.95" "3.57" "79.22" "65.57" "84.91" ```
```X = str2double(str) ```
```X = 91.5700 95.9500 3.5700 79.2200 65.5700 84.9100 ```

Input Arguments

collapse all

Text that represents numbers, specified as a character vector, a cell array of character vectors, or a string array.

collapse all

Tall Array Support

This function fully supports tall arrays. For more information, see Tall Arrays.