"contains" with multiple conditions
Version 1.1.5 (2,33 KB) von
Yasir
Returns logical true for the elements of a string array that contain a set of substrings combined by boolean operators.
Function based on MATLAB's "contains" which gives logical indices of string array "str" as true for the elements that contain a set of strings in "substr". The strings in "substr" can be combined by using EQUAL ('='), NOT ('~'), AND ('&'), OR ('|') operators processed in this order. If "substr" consists of multiple elements, they are combined by OR.
INPUTS:
"str" / "substr": string array or cell array of strings
OUTPUTS:
"idc_log": logical (TF) indices vector same length as "str"
EXAMPLE:
str = {'fuel', 'air', 'm_fuel', 'm_steam', 'Tsteam', 'Tair', 'Tfuel'};
substr = ['=Tair | ~steam | T & fuel & ~steam'];
substr = {'=Tair', '~steam', 'T & fuel & ~steam'}; % treated same as substr above
idc_log = contains_multi(str, substr)
idc_log gives indices of the elements in "str" which are exactly EQUAL to 'Tair' OR does not contain 'steam' OR contain 'T' AND 'fuel' but NOT 'steam'.
Version: 1.1
Tested on MATLAB 2020b
Yasir, 2023-11-11
Zitieren als
Yasir (2026). "contains" with multiple conditions (https://de.mathworks.com/matlabcentral/fileexchange/154925-contains-with-multiple-conditions), MATLAB Central File Exchange. Abgerufen.
Kompatibilität der MATLAB-Version
Erstellt mit
R2020b
Kompatibel mit R2020b und späteren Versionen
Plattform-Kompatibilität
Windows macOS LinuxTags
Quellenangaben
Inspiriert von: String Toolkits, structfind, mgrep, strfind for datasets
Live Editor erkunden
Erstellen Sie Skripte mit Code, Ausgabe und formatiertem Text in einem einzigen ausführbaren Dokument.
| Version | Veröffentlicht | Versionshinweise | |
|---|---|---|---|
| 1.1.5 | Changed title. |
||
| 1.1.4 | Renamed. |
||
| 1.1.3 | Renamed. |
||
| 1.1.2 | Renamed. |
||
| 1.1.1 | Accepts "susbtring" as an array of multiple strings. Individual strings will be combined by the OR operator. |
||
| 1.1.0 |
