Extracting a double from a text file

Hi everone,
I want to extract the number that in front of Volt[M/Y] from alarge Text file. the structure of the file is described bellow. After reading the files in matlab, i want to look for the numbers in front of Volt [M/Y]. I succeded reading the files, and i also tried to solve the task with the matlab function regexp:
Data= regexp(A,'M/Y]\s*\w*$','tokens');
I have a dificulty to write the aproppriate expression to save the right number. Could you plase give any hints?
Thank you
U I N
2.420 -28.87 3.0710
2.430 -30.82 2.1945
Volt [M/Y] -12.258812
U I N
700 -30.39 1.9684
900 -29.60 2.1034
Volt [M/Y] 100.05

 Accepted Answer

hello
my 2 cents suggestion (as I still struggle with regexp !)
bs = split(fileread('data.txt'));
values = bs(find(strcmp(bs,'[M/Y]')>0) + 1);

2 Comments

Thank you Mathieu. Great way to solve it. I learnt something new!
My pleasure
still have to workout regexp !!

Sign in to comment.

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Asked:

on 28 May 2021

Commented:

on 31 May 2021

Community Treasure Hunt

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

Start Hunting!