MATLAB: Parsing integers from directory list

directory integer parsingMATLAB

I have a directory with files names:
1_d
3_kk
56_rr
I need to parse the list numbers from the file names. I need to output a numerical array
[1 3 56]
is there a simple way to do it?

Best Answer

Hi!
What du you have? An array of strings or a cell array? Are the numbers always in front of the file name?
Suppose you have a cell array C, try using regexp:
C2 = regexp(C, '(\d*)', 'tokens');
C2 = cellfun(@(x) x{1}, C2);
numbers = cellfun(@(x) str2double(x), C2);