File Exchange

image thumbnail

Flexible search and listing tool for field names in a structure array

version 1.0 (2.87 KB) by

Searches for field names in a structure array and lists them

3 Downloads

Updated

View License

Call options:
------------

SearchFields(AStruct)
- Displays all fields in structure array AStruct with their complete ("long") names.

SearchFields(AStruct, SearchString)
- Displays all fields in structure array AStruct of which the name contains SearchString (default = case-insensitive).

SearchFields(AStruct, SearchString, SearchOption)
- The following options may be indicated by SearchOption:
'default' - Default (case-insensitive search, see above).
'case' - Case-sensitive search.
'exact' - Only those field names are listed which matches the SearchString exactly (case-insensitive search).
'exactcase' - The same as 'exact', but with case-sensitive search.
'begin' - Only those field names are listed of which the beginning matches the SearchString (case-insensitive search).
'begincase' - The same as 'begin', but with case-sensitive search.
'end' - Only those field names are listed of which the end matches the SearchString (case-insensitive search).
'endcase' - The same as 'end', but with case-sensitive search.
If no option is given, 'default' is assumed.

SearchFields(AStruct, SearchString, SearchOption, AStructName)
- Normally, the name of the structure array AStruct is resolved using the internal MatLab function "inputname". However, this does not work when the name of AStruct contains dots and/or brackets. As a workaround (as well as to enable recursive operation) the name of AStruct can be entered "manually" as a string in AStructName.

FoundFieldsList = SearchFields(AStruct, ...)
- A list of the found field names is stored as a cellular string array into the output variable FoundFieldsList.

If no output variable is indicated, the names are printed as a list on the screen.

Example of function call:
------------------------
SearchFields(ExampleStruct, 'afield')

Result (example):
----------------
ExampleStruct.AField
ExampleStruct.AnotherField{2,3}.AField
ExampleStruct.AnotherField{2,3}.AField2

Comments and Ratings (3)

If issues arise with this tool, please be invited to try File Exchange ID #49775 "SearchStruct" (from the same author).

Andrew Davis

Very useful

Makoto Miyakoshi

Nice tool. Good job.

MATLAB Release
MATLAB 7.2 (R2006a)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video