How to convert char into double?

884 views (last 30 days)
Ivan Shorokhov
Ivan Shorokhov on 30 Sep 2016
Commented: Jan on 26 Apr 2022
Hello everyone,
I have following char: "2.311.592 /" And I want to convert it to double and leave numbers only, I have tried to use
new = str2double(val);
But the output was NaN, what would you recommend me to do?
  3 Comments
Jan
Jan on 30 Sep 2016
Which number do you expect as output?
Ivan Shorokhov
Ivan Shorokhov on 30 Sep 2016
@Jan Simon
I expect the whole number without dots and slashes, i.e. 2311592.
Thank you.

Sign in to comment.

Accepted Answer

Jan
Jan on 30 Sep 2016
Str = '2.311.592 /';
Str(Str < '0' | Str > '9') = [];
Value = sscanf(Str, '%d');

More Answers (2)

Andrei Bobrov
Andrei Bobrov on 30 Sep 2016
with str2double
out = str2double(regexp(val,'\d*','match'))
  5 Comments
mayar elrakhawy
mayar elrakhawy on 26 Apr 2022
I need the value 43.3414 only
Jan
Jan on 26 Apr 2022
str = 'v: 43.3414 m^3/kg';
a = sscanf(str, 'v: %f')
a = 43.3414

Sign in to comment.


Whashak Faeid
Whashak Faeid on 25 Aug 2020
How can I change '$11.75' this data type from char to doube.I want my output $11.75 as a double in data type.
Thanks in advance.
  1 Comment
Stephen23
Stephen23 on 25 Aug 2020
>> str = '$11.75';
>> val = sscanf(str,'$%f')
val = 11.750

Sign in to comment.

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!