Hello!
There's probably a simple tool for this, but I can't find it:
Have a string for a file name that includes the full path, like:
C:\Users\DougAnderson\Documents\MATLAB\SHtest\sig hole 1.xlsx
where the last part (the actual file name) may contain spaces. I would like to change this to, for example
sig hole 1
Thanks
Doug

 Réponse acceptée

Chad Greene
Chad Greene le 11 Déc 2014
Modifié(e) : Chad Greene le 11 Déc 2014

5 votes

You can use fileparts. I had to switch the direction of the slashes because I'm using a mac, but it should work on your machine keeping the slashes the way you wrote them:
[~,name,~] = fileparts('C:/Users/DougAnderson/Documents/MATLAB/SHtest/sig hole 1.xlsx')
name =
sig hole 1

2 commentaires

Chad, fullfile will handle filesep for you.
fullfile('C:\Documents/MATLAB')
Chad Greene
Chad Greene le 11 Déc 2014
Ah, very cool!

Connectez-vous pour commenter.

Plus de réponses (2)

Azzi Abdelmalek
Azzi Abdelmalek le 11 Déc 2014

1 vote

s='C:\Users\DougAnderson\Documents\MATLAB\SHtest\sig\hole 1.xlsx'
out=regexp(s,'(?<=\\)[^\\]+$','match')

1 commentaire

Douglas Anderson
Douglas Anderson le 11 Déc 2014
Thank you, Azzi. I thought I might have to go to "regexp()" to get this done, but "fileparts()" makes my task simpler!

Connectez-vous pour commenter.

Douglas Anderson
Douglas Anderson le 11 Déc 2014

0 votes

Ah, Perfect!!!! Thank you, Chad.

Catégories

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by