Using regular expression to read part of the filename
5 views (last 30 days)
Show older comments
Good afternoon,
I am attempting to use a regular expression feature to read part of the file that is generated by the microscope camera.
The file format is x_yyyymmdd_hhmmSSsss where small s is the milisecond and x is the number of the timelapsed photo.
I am trying to convert (truncate) say 5_20180927_161742655 to 20180927_161742 so that I can use this as a timestamp more easily.
Any help would be appreciated. Thank you.
0 Comments
Accepted Answer
More Answers (1)
dpb
on 1 Oct 2018
Edited: dpb
on 2 Oct 2018
AMMENDED -- dpb
Don't need regular expressions for that purpose, just select the first N-3 characters in the file name...
S=15; % sublength of wanted string (15)
[~,TS]=fileparts(fname); % return the file name w/o path, extension
L=length(TS); % just get the overall length
TS=TS(L-(S+3)+1:L-3); % pick up between file and sss millisec portion
Alternatively, one can
L1=find(fn=='_',1)+1; % location just past first underscore
TS=TS(L1:L-3); % pick up between file and sss
NB: fileparts will return the name as either char array or cellstr depending on input form for fanme going in so may need to dereference a cell string if that is the form.
I'm sure there is a regexp expression that will work but I'm just not adept with its syntax, sorry...
2 Comments
See Also
Categories
Find more on Workspace Variables and MAT Files 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!