loop over variable with different characters

1 Ansicht (letzte 30 Tage)
Serhat Unal
Serhat Unal am 29 Sep. 2022
Kommentiert: Stephen23 am 2 Okt. 2022
Hi,
I wonder if someone cna help me with my problem and that is if I have lets say 4 variables in my workspace with different
characters in the begnning end ends with the same words, for example:
abcd_hpcd_Df
defg_hpcd_Df
hijk_hpcd_Df
lmno_hpcd_Df
I want to write it in matlab in a easier way, just write hpcd_Df and not the characters in the beginning.
  5 Kommentare
Serhat Unal
Serhat Unal am 29 Sep. 2022
I want to call them and insert them into a table as a column with these variables. The thing is
that each of the variables is among 100 other variables and I dont know what words they begin with
and to look visually and find each is a very time consuming. Therefore when I clean the workspace and insert
new 100 variables I want to write like_hpcd_Df to find the corresponding variable.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Jan
Jan am 29 Sep. 2022
This shows, that you have created a bunch of variables and stored important information in the name of the variables. This design is a typical DON'T in programming.
But is you do not want to re-design the code from scratch, this might help:
clear variables
abcd_hpcd_Df = 1;
defg_hpcd_Df = 1;
hijk_hpcd_Df = 1;
lmno_hpcd_Df = 1;
abcde = 2;
VarList = whos;
NameList = {VarList.name};
NameList(endsWith(NameList, '_hpcd_Df'))
ans = 1×4 cell array
{'abcd_hpcd_Df'} {'defg_hpcd_Df'} {'hijk_hpcd_Df'} {'lmno_hpcd_Df'}
  4 Kommentare
Serhat Unal
Serhat Unal am 2 Okt. 2022
This is the exact answer to my question. Thanks alot!
Stephen23
Stephen23 am 2 Okt. 2022
abcd_hpcd_Df = 1;
defg_hpcd_Df = 1;
hijk_hpcd_Df = 1;
lmno_hpcd_Df = 1;
abcde = 2;
save('mydata.mat','-regexp','_hpcd_Df$')
S = load('mydata.mat')
S = struct with fields:
abcd_hpcd_Df: 1 defg_hpcd_Df: 1 hijk_hpcd_Df: 1 lmno_hpcd_Df: 1

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by