Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想在 MATLABdirname和basenameLinux 中获取文件名的路径部分。我试图转向寻找类似的功能strrchr,但我失败了。我知道strtok,strfind并且textscan可以使用,但我想用不超过两个语句来完成这个。
dirname
basename
strrchr
strtok
strfind
textscan
对于这个特殊问题,我建议您使用以下fileparts功能:
fileparts
[path, filename, extension] = fileparts(str)
尼克的回答绝对符合您的要求,但这里有一个替代答案regexprep:
regexprep
regexprep(str, '(.+)(?:\\|/)(.*)', '$1')
如果您想捕获文件名(包括扩展名),请使用$2令牌而不是$1. 这是正则表达式的一个很好的练习,在 MATLAB 中解析文本时证明它非常有用。
$2
$1