Flexible search and listing tool for field names in a structure array
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
Cite As
Paul A.M. Bune (2024). Flexible search and listing tool for field names in a structure array (https://www.mathworks.com/matlabcentral/fileexchange/19484-flexible-search-and-listing-tool-for-field-names-in-a-structure-array), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Version | Published | Release Notes | |
---|---|---|---|
1.0.0.0 | No change in the program file. Only correction of a small typo in the description on the website, where the search mode using the 'default' option was indicated as being case-sensitive, while in realitiy it is case-insensitive. |