【发布时间】:2013-01-06 17:23:48
【问题描述】:
我想在 MATLAB 中获取文件名的路径部分,例如 Linux 中的 dirname 和 basename。我试图转向寻找像strrchr 这样的函数,但我失败了。我知道strtok、strfind 和textscan 可以使用,但我想用不超过两个语句来完成。
【问题讨论】:
我想在 MATLAB 中获取文件名的路径部分,例如 Linux 中的 dirname 和 basename。我试图转向寻找像strrchr 这样的函数,但我失败了。我知道strtok、strfind 和textscan 可以使用,但我想用不超过两个语句来完成。
【问题讨论】:
Nick 的回答绝对符合您的要求,但这里有一个使用 regexprep 的替代答案:
regexprep(str, '(.+)(?:\\|/)(.*)', '$1')
如果您想捕获文件名(包括扩展名),请使用$2 令牌而不是$1。
这是一个很好的正则表达式练习,在 MATLAB 中解析文本时被证明是非常有用的。
【讨论】:
filesep?