Matlab 正则表达式在最后一场比赛后,到字符串的末尾



我正在尝试匹配字符最后一次匹配后的所有内容(最后一个"\"之后的所有内容。 这段代码有效,但我想知道我是否可以使用单个正则表达式命令来完成。

filename = 'c:appstestinglocalblah.txt';
chunks = strread(filename,'%s','delimiter','\');
fname = chunks{end};

有两种方法可以解决这个问题:

[pathName, fileName, extension] = fileparts(filename);

使用正则表达式("在反斜杠之后,将所有不是反斜杠的字符([^\]*)直到$末尾,只返回那些'tokens'字符,不要尝试进行多个匹配'once'"(

extension = regexp(filename,'\([^\]*)$','tokens','once')

最新更新