Checking to see if a character is in a string array, then deleting entries where this character isn't in a string
6 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I have a string array that is just a list of words (dictionary), a random word (word) is selected and I want to loop though the alphabet, then if, say 'a' isn't in my random word it will delete all entries in my string array that contain 'a' etc. (Warning you now, I'm new to matlab).
for i=alphabet;
if i==word;
strfind(dictionary,i);
sel(i)=true;
end
end
rows=find(sel);
newdictionary=dictionary(sel);
this isn't working, so any help with fixing it would be really appreciated
0 Commenti
Risposta accettata
Thorsten
il 10 Nov 2015
Modificato: Thorsten
il 13 Nov 2015
To delete all entries with an 'a' from your dictionary
dictionary = {'a' 'b' 'ba' 'c' 'hallo'};
idx = ~cellfun(@isempty, strfind(dictionary, 'a'));
dictionary(idx) = [];
To select a random word from your dictionary
word = dictionary(randi(numel(dictionary)));
Now you can loop over the characters in word to remove all entries in dictionary that have this character.
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Data Type Identification in Help Center e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!