Separate path string into drive and folders
225 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Philipp
el 24 de Jul. de 2013
Comentada: Stephen23
el 21 de Mayo de 2024
Hi,
using fileparts brings the path, the name and the exentension of a fullfile (e.g., C:\user\files\myFile.txt). Is there a function that separates the path into drive and folders, so that drive = 'C:' folder1 = 'user' folder2 = 'files' ?
Thx, Philipp
0 comentarios
Respuesta aceptada
Azzi Abdelmalek
el 24 de Jul. de 2013
s='C:\user\files\myFile.txt'
out=regexp(s,'\','split')
6 comentarios
Riad
el 21 de Mayo de 2024
Hi @Stephen23 there more easier way by using strsplit but I want to avoid using either "/" or "\" in the script (on the server, I've a Linux OS):
strsplit('Swc_MTR/Run_MTR_1ms_sys/COMP_/In1','/')
ans =
1×4 cell array
{'Swc_MTR'} {'Run_MTR_1ms_sys'} {'COMP_'} {'In1'}
Stephen23
el 21 de Mayo de 2024
"filesep is equivalent to "\" and it works fine for a kind of paths"
No, what FILESEP is depends on the OS that MATLAB is currently running on.
"I want to avoid strsplit function by using a function that can work for both Windows/Linux OS !"
And now you write that you want to use STRSPLIT: your requirements keep on changing.
"I want to avoid using either "/" or "\" in the script (on the server, I've a Linux OS)"
I thought the requirement is to split on either of the path separators, which is also easy with STRSPLIT:
strsplit('Swc_MTR/Run_MTR_1ms_sys/COMP_/In1',{'/','\'})
Más respuestas (2)
Christian Schwermer
el 9 de Sept. de 2018
The shortest solution is to split the string using filesep as delimeter. filesep returns the platform-specific file separator "\" or "/".
pathparts = strsplit(s,filesep);
0 comentarios
Dominique
el 19 de Jul. de 2023
path = uigetdir()
foldername = strsplit(path,"\");
foldername = foldername(end);
0 comentarios
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!