Populate Listbox with exceptions

1 visualizzazione (ultimi 30 giorni)
Robert Worm
Robert Worm il 21 Ago 2018
Modificato: Jan il 23 Ago 2018
Currently my method of outputing directory files to a listbox is:
dir_struct = dir(pwd)
[sorted_names,sorted_index] = sortrows({dir_struct.name}');
handles.file_names = sorted_names;
set(handles.files,'String',handles.file_names,'Value',1)
When getting the sorted_names I want to exclude certain files. Let's say files containing 'include' should be included, /w 'exclude' not.
I was thinking about using regexp. Suggestions?

Risposta accettata

Jan
Jan il 23 Ago 2018
Modificato: Jan il 23 Ago 2018
Replace
[sorted_names,sorted_index] = sortrows({dir_struct.name}');
by the simpler:
sorted_names = sort({dir_struct.name});
Now you want to exlucde names, which contain the substring 'exclude'?
sorted_names(contains(sorted_names, 'exclude')) = [];
Or include files, whose name contains 'include':
sorted_names = sorted_names(contains(sorted_names, 'include'));
With older Matlab versions before contains was available, use:
function T = myContains(Str, Key)
T = ~cellfun('isempty', strfind(Str, Key));
end

Più risposte (0)

Categorie

Scopri di più su Migrate GUIDE Apps in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by