Extract Variable from Filename?
1 view (last 30 days)
Show older comments
Hi there,
I'm trying to write a reuseable function for a multitude of data points. My current filename when I download my data is:
sitename.yr.synth.daily.mat
Is there a straightforward way to extract the site name so that I can assign it to a column in the matrix? The year is already a column.
I will need to do this on hundreds of sites and years, so I don't want to code each site name by hand. I also need this so that I can match the site name with other classifications and generate unique file names.
Thanks a million!
0 Comments
Accepted Answer
Matt Kindig
on 29 May 2013
You can use strtok() or other methods, but I prefer regexp here:
filename = 'sitename.yr.synth.daily.mat' %example
pieces = regexp(filename, '\.', 'split'); %divide by periods
sitename = pieces{1};
More Answers (1)
Azzi Abdelmalek
on 29 May 2013
Edited: Azzi Abdelmalek
on 29 May 2013
file='sitename.yr.synth.daily.mat'
idx=strfind(file,'.')
site=file(1:idx(1)-1)
%or
file='sitename.yr.synth.daily.mat'
idx=regexp(file,'\.' ,'split')
site=idx{1}
See Also
Categories
Find more on Data Distribution Plots 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!