# str2double

Convert strings to double precision values

## Syntax

``X = str2double(str)``

## 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×2 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 = "81470.5" ```
`X = str2double(str)`
```X = 8.1471e+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 = 2x3 string "91.57" "95.95" "3.57" "79.22" "65.57" "84.91" ```
`X = str2double(str)`
```X = 2×3 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.