Identifying numbers within a long string containing multiple occurrences of text and numbers in one row

1 Ansicht (letzte 30 Tage)
Read from a text file, my input array contains one row that looks like this:
x y z p (Pa) @ mDot=0.003 p (Pa) @ mDot=0.03 p (Pa) @ mDot=0.3 p (Pa) @ mDot=3
Is there a way to identify the numbers in that row and create a separate numerical array based on them?
Something like:
NUMM=[0.003 0.03 0.3 3]

Akzeptierte Antwort

Stephen23
Stephen23 am 12 Jan. 2022
Bearbeitet: Stephen23 am 12 Jan. 2022
Simpler and gives the requested output:
str = 'x y z p (Pa) @ mDot=0.003 p (Pa) @ mDot=0.03 p (Pa) @ mDot=0.3 p (Pa) @ mDot=3';
out = str2double(regexp(str,'\d+\.?\d*','match'))
out = 1×4
0.0030 0.0300 0.3000 3.0000

Weitere Antworten (1)

Saeid
Saeid am 12 Jan. 2022
Thank you both!

Produkte


Version

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by