Passing variables in string under for loop.

조회 수: 2 (최근 30일)
Paramjit Yadav
Paramjit Yadav 2021년 8월 11일
편집: the cyclist 2021년 8월 11일
Hello,
I am trying to run the below code. Here I am passing the string with i and j as variable but it is not taking i and j as variable and showing errors.
Can some please help by saying how to do indexing with in a string and pass the values of i and j in the string in for loop as variable.
for j = 1:12
for i = 1:12
lt.Cmd('AddPickup "SPLINEPATCH_LENS_SURFACE[LensRearSurface].ZValueAt[i][j]"')
end
end
Thank you so much for reading my querry.
Regards
Paramjit

답변 (1개)

the cyclist
the cyclist 2021년 8월 11일
편집: the cyclist 2021년 8월 11일
You need to convert the numeric values in the loops into strings. Here is how to construct the string to pass into lt.Cmd:
i = 1; % Using just a couple specific values, instead of the whole loop, just to illustrate one case
j = 2;
strcat('AddPickup "SPLINEPATCH_LENS_SURFACE[LensRearSurface].ZValueAt[',num2str(i),'][',num2str(j),']"') % You would pass this string into lt.Cmd
ans = 'AddPickup "SPLINEPATCH_LENS_SURFACE[LensRearSurface].ZValueAt[1][2]"'
The idea here is that I am creating strings out of i and j, and then concatenating all of the strings together into the one long string you need.

카테고리

Help CenterFile Exchange에서 Characters and Strings에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by