Contenu principal

isfield

Déterminer si l’entrée est un champ de tableau de structures

Description

TF = isfield(S,field) renvoie 1 si field est le nom d’un champ du tableau de structures S. Sinon, la fonction renvoie 0.

Si field est un tableau contenant plusieurs noms et que S est un tableau de structures, TF est un tableau logique de même taille.

Si S n’est pas un tableau de structures, isfield renvoie 0.

exemple

Exemples

réduire tout

Créez une structure.

S.x = linspace(0,2*pi);
S.y = sin(S.x);
S.title = 'y = sin(x)'
S = struct with fields:
        x: [0 0.0635 0.1269 0.1904 0.2539 0.3173 0.3808 0.4443 0.5077 0.5712 0.6347 0.6981 0.7616 0.8251 0.8885 0.9520 1.0155 1.0789 1.1424 1.2059 1.2693 1.3328 1.3963 1.4597 1.5232 1.5867 1.6501 1.7136 1.7771 1.8405 1.9040 1.9675 … ] (1×100 double)
        y: [0 0.0634 0.1266 0.1893 0.2511 0.3120 0.3717 0.4298 0.4862 0.5406 0.5929 0.6428 0.6901 0.7346 0.7761 0.8146 0.8497 0.8815 0.9096 0.9341 0.9549 0.9718 0.9848 0.9938 0.9989 0.9999 0.9969 0.9898 0.9788 0.9638 0.9450 0.9224 … ] (1×100 double)
    title: 'y = sin(x)'

Déterminez si 'title' est le nom d’un champ de S.

TF = isfield(S,'title')
TF = logical
   1

Vous pouvez tester plusieurs noms dans un seul appel à la fonction isfield en les spécifiant dans un cell array ou un tableau de chaînes de caractères.

field = {'x','y','z','title','error'};
TF = isfield(S,field)
TF = 1×5 logical array

   1   1   0   1   0

Arguments d'entrée

réduire tout

Tableau de structures.

Noms de champs potentiels, spécifiés sous forme de vecteur de caractères, de cell array de vecteurs de caractères ou de tableau de chaînes de caractères.

Conseils

  • Si l’argument en entrée S est un objet, isfield renvoie toujours 0 même si field est le nom d’une propriété.

    Pour déterminer si un nom est le nom d’une propriété d’un objet, utilisez la fonction isprop.

Capacités étendues

développer tout

Historique des versions

Introduit avant R2006a