Azzera filtri
Azzera filtri

Removing characters from/breaking up file names

31 visualizzazioni (ultimi 30 giorni)
Hello all,
I have a list of file names from which I'd like to remove some characters. Ideally, I'd like to break up the file name into parts, but can't figure out how to do that (aside from fileparts, which was useful in removing the extension). Here's an example:
02-Feb-2009_1.xls ------------------------------------- 02-Feb-2009_1
02-Feb-2009_2.xls ----after file parts ext removal----> 02-Feb-2009_2
02-Feb-2009_3.xls ------------------------------------- 02-Feb-2009_3
I would like to separate the names into dates and trial numbers (in different columns):
02-Feb-2009_1 -------------------------------------- 02-Feb-2009 / / 1
02-Feb-2009_2 --------------?--?--?----------------> 02-Feb-2009 / / 2
02-Feb-2009_3 -------------------------------------- 02-Feb-2009 / / 3
I have tried taking the length of the names, then subtracting 2 or 3, but I can't figure out how to apply that new length to each cell in the file.

Risposta accettata

Mischa Kim
Mischa Kim il 16 Feb 2014
Modificato: Mischa Kim il 16 Feb 2014
B.M. you could use the strfind command:
str = '02-Feb-2009_1.xls';
str_trim = str(1:strfind(str,'.')-1)
str_trim =
02-Feb-2009_1
or, for the latter part
str = '02-Feb-2009_1';
str_1 = str(1:strfind(str,'_')-1)
str_1 =
02-Feb-2009
str_2 = str(strfind(str,'_')+1:end)
str_2 =
1

Più risposte (1)

Image Analyst
Image Analyst il 16 Feb 2014
What about using the fileparts() function?
  2 Commenti
B.M.
B.M. il 16 Feb 2014
I did, to remove the .xls extension--that was easy. It was harder to clip off extra parts of the filenames (like, in my case, the underscore plus trial number). In other words, I wasn't sure how to remove a custom part of a file name rather than the pre-specified outputs in "fileparts."
Image Analyst
Image Analyst il 16 Feb 2014
Sorry - I didn't read closely enough. I guess you need to do custom parsing like Mischa showed. I often do that too.

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by