How to extract values from a string.

18 views (last 30 days)
So I have a string in the following format:
filename = "Delft_2_220_20_4344-5088.csv" ;
And I want to extract the numbers from it, what is a good way to do this?
So the result is something like this:
a=2; b=220; c=20;d=[4344 5088];

Accepted Answer

Stephen23
Stephen23 on 24 May 2019
Edited: Stephen23 on 24 May 2019
>> S = 'Delft_2_220_20_4344-5088.csv';
>> V = str2double(regexp(S,'\d+','match'))
V =
2 220 20 4344 5088
Using indexing to allocate those values to whatever other variables you want.
  2 Comments
madhan ravi
madhan ravi on 24 May 2019
Edited: madhan ravi on 24 May 2019
+1 Stephen, also if the string contains decimals then
regexp(s,'\d+[\.]?\d*','match')
Mario Verheijen Verheijen
Mario Verheijen Verheijen on 24 May 2019
Thanks Stephen, works perfectly!

Sign in to comment.

More Answers (0)

Categories

Find more on Characters and Strings in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!