I need to separate text from value

I need to separate the output of fscanf
current_amp =
:MEASUREMENT:IMMED:VALUE 35.0E-12
and only retain the number.
I would like to have the output only give me 35.0E-12.
I looked into using regexp, but it also separates the number to 35 12.
If anyone has any advice it would be greatly appreciated.
Best
Umar

Answers (1)

str = ':MEASUREMENT:IMMED:VALUE 35.0E-12'
value = sscanf(str,'%*s %f')

4 Comments

or perhaps you can use fscanf directly using the file identifier:
value = fscanf(fid,'%*s %f')
Thank you for the quick response. It seems it helps a bit but not all the way. I am reading data from an oscilloscope using:
fprintf(gpib2, 'MEASU:IMM:VAL?');
current_amp = fscanf(gpib2, '%g')
then I get:
current_amp =
:MEASUREMENT:IMMED:VALUE 38.0E-12
When I use your suggestion as:
str = 'current_amp'
value = sscanf(str,'%*s %f')
I get:
str =
current_amp
value =
[]
Is there any way to correct this?
Best
Umar
Jos
Actually I got it to work!! Thank you so much!!
I used your suggestion and got it. Thank you for your help!!!
Good to hear that. Solving a problem yourself is the best way to learn!

Sign in to comment.

Categories

Asked:

on 1 Mar 2016

Edited:

on 2 Mar 2016

Community Treasure Hunt

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

Start Hunting!