如何在 matlab 中执行此操作;
ismember(file_names,['*.mp4'])
我会这样做regexp
,像这样:
result = ~cellfun(@isempty,(regexp(file_names,'\.mp4$')));
例如,
file_names = {'aaa.mp4','bbb.mp3'};
给
result =
1 0
这可以通过以下方式轻松实现regexp
:
tf = ~cellfun('isempty', regexp(file_names, '.*\.mp4'));
如果要强制模式匹配文件名的开头或结尾,则应分别添加插入符号 ( ^
) 或美元符号 ( $
),例如:
%// Match pattern at the beginning of the filename
tf = ~cellfun('isempty', regexp(file_names, '^.*\.mp4'));
%// Match pattern at the end of the filename
tf = ~cellfun('isempty', regexp(file_names, '\.mp4$'));
如果您的搜索模式足够简单,您可以strfind
改用:
tf = ~cellfun('isempty', strfind(file_names, '.mp4'));
请注意,此方法不允许您搜索更复杂的模式,也不允许检查条件(通常),例如字符串末尾的模式的外观......