5

我想在 MATLABdirnamebasenameLinux 中获取文件名的路径部分。我试图转向寻找类似的功能strrchr,但我失败了。我知道strtokstrfind并且textscan可以使用,但我想用不超过两个语句来完成这个。

4

2 回答 2

8

对于这个特殊问题,我建议您使用以下fileparts功能:

[path, filename, extension] = fileparts(str)
于 2013-01-23T09:27:07.260 回答
3

尼克的回答绝对符合您的要求,但这里有一个替代答案regexprep

regexprep(str, '(.+)(?:\\|/)(.*)', '$1')

如果您想捕获文件名(包括扩展名),请使用$2令牌而不是$1. 这是正则表达式的一个很好的练习,在 MATLAB 中解析文本时证明它非常有用。

于 2013-01-23T10:27:55.150 回答