Rename files after a certain string in the file itself appears

3 visualizzazioni (ultimi 30 giorni)
Dear MatLab users,
I have a bunch of files in a folder I need to rename. Basically, I want to delete the first 5 or 6 characters of the filename, those before a certain string. However, I do not know when this occurs, so I need to code it using something like strfind, but haven't managed to do it. Below is the code I have so far:
files_csv = dir('*.csv');
for i = 1 : length(files_csv)
baseFileName = files_csv(i).name;
%newFileName = baseFileName(6:end);
copyfile( baseFileName , newFileName )
end
Instead on newFileName = baseFileName(6:end), which only deletes the first 6 characters, I need to retain the characters after the string "PGA" appears.
Thanks

Risposta accettata

Jan
Jan il 27 Apr 2022
An explicit example would be useful: old name and new name.
Maybe:
files_csv = dir('*.csv');
for i = 1 : length(files_csv)
baseFileName = files_csv(i).name;
newFileName = extractAfter(baseFileName, "PGA");
copyfile( baseFileName , newFileName )
end
  1 Commento
Gianluca Regina
Gianluca Regina il 27 Apr 2022
Oh, sorry about that. Nevertheless, your adjustment works perfectly, thank you very much! For future reference, I attach the screenshot of the result of your code.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su File Operations in Help Center e File Exchange

Prodotti


Release

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by