Search folders/paths with strfind: how to do excluding search?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
With the code below (adapted from an old question here) I create a list of all folders and subfolders within a give path (using the command genpath and strtok). Using strfind I then select only those folders that contain a given keyword. However, strfind only allows inclusive search, but how can I make e.g. condition 3 such that it only selects the paths that DONT contain the keyword?
listOfFolderNames = {};
allfolders=genpath('D:\test\');
while true
[singleSubFolder, allfolders] = strtok(allfolders, ';');
if isempty(singleSubFolder), break; end
listOfFolderNames = [listOfFolderNames singleSubFolder];
end
indices=strfind(listOfFolderNames,'word a); % <-- filter condition 1
Index = find(not(cellfun('isempty', indices)));
foldersa=listOfFolderNames(Index);
indices2=strfind(foldersa,'word b'); % <-- filter condition 2
Index2 = find(not(cellfun('isempty', indices2)));
foldersb=foldersa(Index2);
indices3=strfind(foldersb,'word c'); % <-- filter condition 3. How to make this eclusive??
Index3 = find(not(cellfun('isempty', indices3)));
foldersfinal=foldersb(Index3);
0 commentaires
Réponse acceptée
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Characters and Strings dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!