How do I use use logical relations on a character array?

Say like I have an array animals=[cat;dog;hamster;shark;duck;bat]. How do I get an array that only contains animals that is spelled with 4 or more letters?

 Réponse acceptée

>> a = {'cat';'dog';'hamster';'shark';'duck';'bat'};
>> a(cellfun('length',a)>3)
ans =
'hamster'
'shark'
'duck'

3 commentaires

Anonymous Matrix
Anonymous Matrix le 15 Fév 2017
Modifié(e) : Anonymous Matrix le 15 Fév 2017
do i have to type out each one? because the example i gave is short and simple. but i actually have to work with a given array (that i can't manipulate) that has 54 total.
Stephen23
Stephen23 le 15 Fév 2017
Modifié(e) : Stephen23 le 15 Fév 2017
@Anonymous Matrix: no you do not have to type out each name again. I used the variable name a as an example. Use whatever variable you have been given, e.g.:
name_of_your_variable(cellfun('length',name_of_your_variable)>3)
thanks!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Vehicle Dynamics Blockset dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by