Is it Possible to store an if Condition in a String to manipulate later ?

조회 수: 5 (최근 30일)
Ian
Ian 2014년 10월 22일
편집: Guillaume 2014년 10월 22일
Am I able to do something like this in Matlab? Please advice
aaa = 'r > 0 && r < 5 '; if (aaa) r = r+1; end

채택된 답변

Orion
Orion 2014년 10월 22일
편집: Orion 2014년 10월 22일
you can do that using eval
r=1;
aaa = 'r > 0 && r < 5 ';
if eval(aaa)
r = r+1;
end
disp(r);

추가 답변 (1개)

Guillaume
Guillaume 2014년 10월 22일
편집: Guillaume 2014년 10월 22일
If you really want to store your condition in a string, then use eval as Orion said. However, I wouldn't do that as you don't get an syntax check for the code in your string.
Rather, I'd use an anonymous function:
aaa = @(x) x>0 && x<5; %anonymous function, the name of the variable doesn't matter
if aaa(r) r=r+1;

카테고리

Help CenterFile Exchange에서 Dates and Time에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by