Main Content

find

データ ディクショナリ セクションを検索

説明

foundEntries = find(sectionObj,PName1,PValue1,...,PNameN,PValueN) は、検索条件 PName1,PValue1,...,PNameN,PValueN を使用してデータ ディクショナリ セクション sectionObj を検索し、ターゲットのセクションで見つかった一致するエントリの配列を返します。この構文では、検索条件についてターゲットのセクションにあるエントリのプロパティが照合され、それらの値のプロパティは照合されません。データ ディクショナリ エントリのプロパティの一覧については、Simulink.data.dictionary.Entry を参照してください。

foundEntries = find(sectionObj,PName1,PValue1,...,PNameN,PValueN,options) は、追加の検索オプションを使用してデータ ディクショナリ エントリを検索します。たとえば、検索条件をターゲットのセクションにあるエントリの値と照合することができます。

すべて折りたたむ

データ ディクショナリ myDictionary_ex_API.sldd の [Design Data] セクションを dDataSectObj という名前の Simulink.data.dictionary.Section オブジェクトで表します。

myDictionaryObj = Simulink.data.dictionary.open('myDictionary_ex_API.sldd');
dDataSectObj = getSection(myDictionaryObj,'Design Data');

データ ディクショナリ myDictionary_ex_API.sldd の [Design Data] セクションに格納されているすべてのエントリを返します。

allEntries = find(dDataSectObj)

データ ディクショナリ myDictionary_ex_API.sldd の [Design Data] セクションを dDataSectObj という名前の Simulink.data.dictionary.Section オブジェクトで表します。

myDictionaryObj = Simulink.data.dictionary.open('myDictionary_ex_API.sldd');
dDataSectObj = getSection(myDictionaryObj,'Design Data');

myDictionary_ex_API.sldd の [Design Data] セクションから、値が Simulink.Parameter クラスのオブジェクトであるエントリを検索します。

foundEntries = find(dDataSectObj,'-value','-class','Simulink.Parameter')

データ ディクショナリ myDictionary_ex_API.sldd の [Design Data] セクションを dDataSectObj という名前の Simulink.data.dictionary.Section オブジェクトで表します。

myDictionaryObj = Simulink.data.dictionary.open('myDictionary_ex_API.sldd');
dDataSectObj = getSection(myDictionaryObj,'Design Data');

myDictionary_ex_API.sldd の [Design Data] セクションから、最後に変更したユーザーが jsmith であるエントリを検索します。

foundEntries = find(dDataSectObj,'LastModifiedBy','jsmith')

データ ディクショナリ myDictionary_ex_API.sldd の [Design Data] セクションを dDataSectObj という名前の Simulink.data.dictionary.Section オブジェクトで表します。

myDictionaryObj = Simulink.data.dictionary.open('myDictionary_ex_API.sldd');
dDataSectObj = getSection(myDictionaryObj,'Design Data');

myDictionary_ex_API.sldd の [Design Data] セクションから、最後に変更したユーザーが jsmith であるエントリと名前が fuel で始まるエントリを検索します。

foundEntries = find(dDataSectObj,'LastModifiedBy','jsmith','-or',...
'-regexp','Name','fuel*')

データ ディクショナリ myDictionary_ex_API.sldd の [Design Data] セクションを dDataSectObj という名前の Simulink.data.dictionary.Section オブジェクトで表します。

myDictionaryObj = Simulink.data.dictionary.open('myDictionary_ex_API.sldd');
dDataSectObj = getSection(myDictionaryObj,'Design Data');

myDictionary_ex_API.sldd の [Design Data] セクションから、名前が fuel で始まるエントリを検索します。

foundEntries = find(dDataSectObj,'-regexp','Name','fuel*')

データ ディクショナリ myDictionary_ex_API.sldd の [Design Data] セクションを dDataSectObj という名前の Simulink.data.dictionary.Section オブジェクトで表します。

myDictionaryObj = Simulink.data.dictionary.open('myDictionary_ex_API.sldd');
dDataSectObj = getSection(myDictionaryObj,'Design Data');

データ ディクショナリ myDictionary_ex_API.sldd の [Design Data] セクションに格納されているすべてのエントリを返します。

allEntries = find(dDataSectObj);

値が 237 であるエントリを検索します。1 つを超えるエントリが見つかった場合は、foundEntries という名前の配列に格納します。

foundEntries = [];
for i = 1:length(allEntries)
    if getValue(allEntries(i)) == 237
        foundEntries = [foundEntries allEntries(i)];
    end
end

データ ディクショナリ myDictionary_ex_API.sldd の [Design Data] セクションを dDataSectObj という名前の Simulink.data.dictionary.Section オブジェクトで表します。

myDictionaryObj = Simulink.data.dictionary.open('myDictionary_ex_API.sldd');
dDataSectObj = getSection(myDictionaryObj,'Design Data');

myDictionary_ex_API.sldd の [Design Data] セクションから、値のプロパティが DataType であるエントリを検索します。

foundEntries = find(dDataSectObj,'-value','-property','DataType')

入力引数

すべて折りたたむ

検索するデータ ディクショナリ セクション。Simulink.data.dictionary.Section オブジェクトとして指定します。この関数を使用する前に、関数 getSection などを使用してターゲットのセクションを Simulink.data.dictionary.Section オブジェクトで表しておきます。

検索条件。ターゲットのデータ ディクショナリ セクションにあるエントリのプロパティの名前と値を表す 1 つ以上の名前と値のペアとして指定します。データ ディクショナリ エントリのプロパティの一覧については、Simulink.data.dictionary.Entry を参照してください。名前と値のペアを 1 つを超えて指定した場合は、すべての条件に一致するエントリが返されます。

エントリの値を検索する '-value' オプションを指定すると、検索条件がエントリ自体ではなくエントリの値に適用されます。

例: 'LastModifiedBy','jsmith'

例: 'DataSource','myRefDictionary_ex_API.sldd'

追加の検索オプション。サポートされる次の 1 つ以上のオプション コードとして指定します。

'-value'このオプションを指定すると、find でターゲットのデータ ディクショナリ セクションにあるエントリの値だけが検索されます。このオプションは、他の検索条件や options 引数よりも前に指定します。
'-and''-or''-xor''-not' の論理演算子これらのオプションは、複数の検索条件や他のオプション コードを修飾または結合するために使用します。
'-property',propertyNameこの名前と値のペアを指定すると、findpropertyName プロパティ (値は任意) をもつエントリまたは値が検索されます。propertyName は文字ベクトルとして指定します。
'-class',classNameこの名前と値のペアを指定すると、find でクラス className のオブジェクトであるエントリまたは値が検索されます。className は文字ベクトルとして指定します。
'-isa',classNameこの名前と値のペアを指定すると、find でクラス className またはそのクラスから派生したサブクラスのオブジェクトであるエントリまたは値が検索されます。className は文字ベクトルとして指定します。
'-regexp'このオプションを指定すると、検索条件で正規表現を使用できます。このオプションは '-regexp' の後に指定した検索条件にのみ適用されます。

例: '-value'

例: '-value','-property','CoderInfo'

例: '-value','-class','Simulink.Parameter'

出力引数

すべて折りたたむ

指定された検索条件に一致するデータ ディクショナリ エントリ。Simulink.data.dictionary.Entry オブジェクトの配列として返されます。

代替方法

モデル エクスプローラーを使用して、任意の条件でデータ ディクショナリ内のエントリを検索することができます。

バージョン履歴

R2015a で導入