我有这个字符串:
aa= 'SAN/MOST/MOD10A1.005/2000.02.26/MOD10A1.A2000057.h01v10.005.2007163034521.hdf.xml'
我想将其更改为:
'MOD10A1.A2000057.h01v10.005.2007163034521.hdf.xml'
如何使用Matlab做到这一点? 我尝试使用此代码,但它无法正常工作。
s=regexp(aa, '[_.]', 'split');
任何人都可以帮忙??
答案 0 :(得分:2)
您可以改为使用strfind
功能:
idx = strfind(aa,'/');
s = aa(idx(end)+1:end)
答案 1 :(得分:2)
strfind
仅适用于R2013a及以后版本。您当然可以像以前一样使用regexp
,但请查找/
符号。查找/
符号的最后一次出现,然后使用它并将其余字符串子集,就像Highman正在做的那样。换句话说:
aa = 'SAN/MOST/MOD10A1.005/2000.02.26/MOD10A1.A2000057.h01v10.005.2007163034521.hdf.xml';
idx = regexp(aa, '\/');
aaSubset = aa(idx(end)+1 : end);
请注意,我必须使用\
字符并将其放在/
字符之前,因为/
是查看正则表达式时的保留符号。 aaSubset
包含您正在寻找的字符串。我明白了:
aaSubset =
MOD10A1.A2000057.h01v10.005.2007163034521.hdf.xml
答案 2 :(得分:2)