按标识符分隔文件名

Mus*_*shi 0 matlab filenames split

对许多人来说,这可能是一项非常简单的任务,但我找不到适合我的任何东西.

我有一个文件名: filenm_A006.2011.269.10.47.G25_2010

我想将它的所有部分(用.和分隔_)分开使用它们.我怎么能用简单的matlab命令呢?

亲切的问候,

亩施

Pet*_*ter 5

我推荐正则表达式:

fname = 'filenm_A006.2011.269.10.47.G25_2010';
parts = regexp(fname, '[^_.]+', 'match');

parts = 
    'filenm'    'A006'    '2011'    '269'    '10'    '47'    'G25'    '2010'
Run Code Online (Sandbox Code Playgroud)

您现在可以参考零件{1}到零件{8}来获取零件.说明:正则表达式模式[^_.]表示所有字符不等于_.,+表示您希望组至少包含1个字符.然后'match'要求regexp函数返回该模式的所有匹配字符串的单元格数组.还有其他正则表达式模式; 例如,每个文件的索引.