if i have a valid pathname like this:
C:\folder\\\\subfolder\.\.\..\..\documents\map\dir\\\..\location\
how can i change that to its simplest form in a simple way?
one way i came up with is
stupidpath='C:\folder\\\\subfolder\.\.\..\..\documents\map\dir\\\..\location\'
currentpath=cd
cd stupidpath
cleverpath = cd
cd currentpath
and another way would be with strrep, strfind, etc. but that is both quite cumbersome. is there another, easy way?

 Réponse acceptée

Wesley Ooms
Wesley Ooms le 7 Mai 2014

0 votes

ok, solved myself:
p='C:\folder\\\\subfolder\.\.\..\..\documents\map\dir\\\..\location\'
p=p(p~='.')
p=p(p~='\'|p([2:end end])~='\')

2 commentaires

Slim
Slim le 31 Août 2015
This solution yields 'C:\folder\subfolder\documents\map\dir\location', so it doesn't take into account the relative paths.
I would have expect a result more like 'C:\documents\map\location'

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Filename Construction dans Centre d'aide et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by